From cf4ab40452bf98d323ffcc8ea20f3bb889f68158 Mon Sep 17 00:00:00 2001 From: Tim van der Lippe Date: Fri, 12 Feb 2021 14:30:58 +0000 Subject: [PATCH] Update typescript-eslint to 4.15.0 This also fixes a bug in the PRESUBMIT that ensures that, whenever we update typescript-eslint, we correctly rerun the full linter check. DISABLE_THIRD_PARTY_CHECK=NPM update R=jacktfranklin@chromium.org Bug: none Change-Id: I016f73b26cd84cabf3171aba89c88a0d72820f1a Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2692165 Commit-Queue: Tim van der Lippe Reviewed-by: Jack Franklin --- PRESUBMIT.py | 2 + front_end/object_ui/JavaScriptREPL.ts | 2 +- node_modules/@types/json-schema/README.md | 2 +- node_modules/@types/json-schema/index.d.ts | 182 ++--- node_modules/@types/json-schema/package.json | 6 +- .../eslint-plugin/CHANGELOG.md | 137 ++++ .../eslint-plugin/README.md | 5 +- .../eslint-plugin/dist/configs/all.js | 4 + .../eslint-plugin/dist/configs/all.js.map | 2 +- .../eslint-plugin/dist/rules/comma-spacing.js | 11 +- .../dist/rules/comma-spacing.js.map | 2 +- .../dist/rules/consistent-type-imports.js | 395 ++++++---- .../dist/rules/consistent-type-imports.js.map | 2 +- .../eslint-plugin/dist/rules/index.js | 6 + .../eslint-plugin/dist/rules/index.js.map | 2 +- .../dist/rules/method-signature-style.js | 14 +- .../dist/rules/method-signature-style.js.map | 2 +- .../rules/naming-convention-utils/enums.js | 4 +- .../naming-convention-utils/enums.js.map | 2 +- .../rules/naming-convention-utils/shared.js | 6 +- .../naming-convention-utils/shared.js.map | 2 +- .../naming-convention-utils/validator.js | 9 + .../naming-convention-utils/validator.js.map | 2 +- .../dist/rules/no-extra-parens.js | 33 +- .../dist/rules/no-extra-parens.js.map | 2 +- .../eslint-plugin/dist/rules/no-redeclare.js | 24 +- .../dist/rules/no-redeclare.js.map | 2 +- .../dist/rules/no-unused-vars.js | 13 +- .../dist/rules/no-unused-vars.js.map | 2 +- .../non-nullable-type-assertion-style.js | 101 +++ .../non-nullable-type-assertion-style.js.map | 1 + .../dist/rules/object-curly-spacing.js | 202 +++++ .../dist/rules/object-curly-spacing.js.map | 1 + .../dist/rules/prefer-function-type.js | 11 +- .../dist/rules/prefer-function-type.js.map | 2 +- .../dist/rules/promise-function-async.js | 32 +- .../dist/rules/promise-function-async.js.map | 2 +- .../sort-type-union-intersection-members.js | 229 ++++++ ...ort-type-union-intersection-members.js.map | 1 + .../eslint-plugin/dist/util/astUtils.js | 30 + .../eslint-plugin/dist/util/astUtils.js.map | 2 +- .../dist/util/collectUnusedVariables.js | 28 +- .../dist/util/collectUnusedVariables.js.map | 2 +- .../docs/rules/consistent-type-imports.md | 2 +- .../eslint-plugin/docs/rules/no-namespace.md | 8 +- .../no-unnecessary-boolean-literal-compare.md | 4 + .../non-nullable-type-assertion-style.md | 27 + .../docs/rules/object-curly-spacing.md | 22 + .../sort-type-union-intersection-members.md | 147 ++++ .../docs/rules/strict-boolean-expressions.md | 2 +- .../node_modules/semver/classes/comparator.js | 8 +- .../node_modules/semver/classes/range.js | 63 +- .../node_modules/semver/classes/semver.js | 9 +- .../node_modules/semver/functions/parse.js | 8 +- .../semver/internal/parse-options.js | 11 + .../node_modules/semver/package.json | 7 +- .../node_modules/semver/ranges/min-version.js | 7 +- .../node_modules/semver/ranges/outside.js | 2 +- .../node_modules/semver/ranges/subset.js | 15 +- .../eslint-plugin/package.json | 9 +- .../experimental-utils/CHANGELOG.md | 80 ++ .../experimental-utils/package.json | 10 +- .../@typescript-eslint/parser/CHANGELOG.md | 83 ++ .../@typescript-eslint/parser/README.md | 4 +- .../parser/dist/parser.d.ts.map | 2 +- .../@typescript-eslint/parser/dist/parser.js | 4 + .../parser/dist/parser.js.map | 2 +- .../@typescript-eslint/parser/package.json | 14 +- .../scope-manager/CHANGELOG.md | 92 +++ .../scope-manager/README.md | 6 + .../scope-manager/dist/analyze.d.ts | 5 + .../scope-manager/dist/analyze.d.ts.map | 2 +- .../scope-manager/dist/analyze.js | 4 +- .../scope-manager/dist/analyze.js.map | 2 +- .../dist/referencer/ClassVisitor.d.ts | 25 + .../dist/referencer/ClassVisitor.d.ts.map | 1 + .../dist/referencer/ClassVisitor.js | 300 ++++++++ .../dist/referencer/ClassVisitor.js.map | 1 + .../dist/referencer/Referencer.d.ts | 12 +- .../dist/referencer/Referencer.d.ts.map | 2 +- .../dist/referencer/Referencer.js | 67 +- .../dist/referencer/Referencer.js.map | 2 +- .../dist/referencer/TypeVisitor.d.ts | 2 + .../dist/referencer/TypeVisitor.d.ts.map | 2 +- .../dist/referencer/TypeVisitor.js | 9 + .../dist/referencer/TypeVisitor.js.map | 2 +- .../scope-manager/package.json | 10 +- .../@typescript-eslint/types/CHANGELOG.md | 80 ++ .../@typescript-eslint/types/package.json | 4 +- .../typescript-estree/CHANGELOG.md | 83 ++ .../typescript-estree/dist/convert.d.ts.map | 2 +- .../typescript-estree/dist/convert.js | 25 +- .../typescript-estree/dist/convert.js.map | 2 +- .../dist/jsx/xhtml-entities.d.ts | 2 + .../dist/jsx/xhtml-entities.d.ts.map | 1 + .../dist/jsx/xhtml-entities.js | 259 +++++++ .../dist/jsx/xhtml-entities.js.map | 1 + .../dist/node-utils.d.ts.map | 2 +- .../typescript-estree/dist/node-utils.js | 18 +- .../typescript-estree/dist/node-utils.js.map | 2 +- .../node_modules/semver/classes/comparator.js | 8 +- .../node_modules/semver/classes/range.js | 63 +- .../node_modules/semver/classes/semver.js | 9 +- .../node_modules/semver/functions/parse.js | 8 +- .../semver/internal/parse-options.js | 11 + .../node_modules/semver/package.json | 7 +- .../node_modules/semver/ranges/min-version.js | 7 +- .../node_modules/semver/ranges/outside.js | 2 +- .../node_modules/semver/ranges/subset.js | 15 +- .../typescript-estree/package.json | 18 +- .../visitor-keys/CHANGELOG.md | 80 ++ .../visitor-keys/package.json | 6 +- node_modules/tsutils/.editorconfig | 12 - node_modules/tsutils/.fimbullinter.yaml | 2 - node_modules/tsutils/.wotanrc.yaml | 5 - node_modules/tsutils/CHANGELOG.md | 63 ++ node_modules/tsutils/index.js | 1 + node_modules/tsutils/index.js.map | 1 + node_modules/tsutils/package.json | 18 +- node_modules/tsutils/typeguard/2.8/index.js | 1 + .../tsutils/typeguard/2.8/index.js.map | 1 + node_modules/tsutils/typeguard/2.8/node.js | 5 + .../tsutils/typeguard/2.8/node.js.map | 1 + node_modules/tsutils/typeguard/2.8/type.js | 2 + .../tsutils/typeguard/2.8/type.js.map | 1 + node_modules/tsutils/typeguard/2.9/index.js | 1 + .../tsutils/typeguard/2.9/index.js.map | 1 + node_modules/tsutils/typeguard/2.9/node.js | 2 + .../tsutils/typeguard/2.9/node.js.map | 1 + node_modules/tsutils/typeguard/2.9/type.js | 1 + .../tsutils/typeguard/2.9/type.js.map | 1 + node_modules/tsutils/typeguard/3.0/index.js | 1 + .../tsutils/typeguard/3.0/index.js.map | 1 + node_modules/tsutils/typeguard/3.0/node.js | 2 + .../tsutils/typeguard/3.0/node.js.map | 1 + node_modules/tsutils/typeguard/3.0/type.js | 2 + .../tsutils/typeguard/3.0/type.js.map | 1 + node_modules/tsutils/typeguard/3.2/index.js | 1 + .../tsutils/typeguard/3.2/index.js.map | 1 + node_modules/tsutils/typeguard/3.2/node.js | 2 + .../tsutils/typeguard/3.2/node.js.map | 1 + node_modules/tsutils/typeguard/3.2/type.js | 1 + .../tsutils/typeguard/3.2/type.js.map | 1 + node_modules/tsutils/typeguard/index.js | 1 + node_modules/tsutils/typeguard/index.js.map | 1 + node_modules/tsutils/typeguard/next/index.js | 1 + .../tsutils/typeguard/next/index.js.map | 1 + node_modules/tsutils/typeguard/next/node.js | 1 + .../tsutils/typeguard/next/node.js.map | 1 + node_modules/tsutils/typeguard/next/type.js | 1 + .../tsutils/typeguard/next/type.js.map | 1 + node_modules/tsutils/typeguard/node.js | 1 + node_modules/tsutils/typeguard/node.js.map | 1 + node_modules/tsutils/typeguard/type.js | 1 + node_modules/tsutils/typeguard/type.js.map | 1 + node_modules/tsutils/util/control-flow.d.ts | 22 +- node_modules/tsutils/util/control-flow.js | 201 ++++- node_modules/tsutils/util/control-flow.js.map | 1 + node_modules/tsutils/util/convert-ast.d.ts | 13 + node_modules/tsutils/util/convert-ast.js | 74 +- node_modules/tsutils/util/convert-ast.js.map | 1 + node_modules/tsutils/util/index.js | 1 + node_modules/tsutils/util/index.js.map | 1 + node_modules/tsutils/util/type.d.ts | 13 + node_modules/tsutils/util/type.js | 71 +- node_modules/tsutils/util/type.js.map | 1 + node_modules/tsutils/util/usage.js | 123 +-- node_modules/tsutils/util/usage.js.map | 1 + node_modules/tsutils/util/util.d.ts | 115 ++- node_modules/tsutils/util/util.js | 718 ++++++++++++------ node_modules/tsutils/util/util.js.map | 1 + package-lock.json | 104 +-- scripts/deps/manage_node_deps.py | 4 +- 173 files changed, 3986 insertions(+), 958 deletions(-) create mode 100644 node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js create mode 100644 node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map create mode 100644 node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js create mode 100644 node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map create mode 100644 node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js create mode 100644 node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js.map create mode 100644 node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md create mode 100644 node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md create mode 100644 node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-union-intersection-members.md create mode 100644 node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/parse-options.js create mode 100644 node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts create mode 100644 node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts.map create mode 100644 node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js create mode 100644 node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js.map create mode 100644 node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts create mode 100644 node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts.map create mode 100644 node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js create mode 100644 node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js.map create mode 100644 node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/parse-options.js delete mode 100644 node_modules/tsutils/.editorconfig delete mode 100644 node_modules/tsutils/.fimbullinter.yaml delete mode 100644 node_modules/tsutils/.wotanrc.yaml create mode 100644 node_modules/tsutils/index.js.map create mode 100644 node_modules/tsutils/typeguard/2.8/index.js.map create mode 100644 node_modules/tsutils/typeguard/2.8/node.js.map create mode 100644 node_modules/tsutils/typeguard/2.8/type.js.map create mode 100644 node_modules/tsutils/typeguard/2.9/index.js.map create mode 100644 node_modules/tsutils/typeguard/2.9/node.js.map create mode 100644 node_modules/tsutils/typeguard/2.9/type.js.map create mode 100644 node_modules/tsutils/typeguard/3.0/index.js.map create mode 100644 node_modules/tsutils/typeguard/3.0/node.js.map create mode 100644 node_modules/tsutils/typeguard/3.0/type.js.map create mode 100644 node_modules/tsutils/typeguard/3.2/index.js.map create mode 100644 node_modules/tsutils/typeguard/3.2/node.js.map create mode 100644 node_modules/tsutils/typeguard/3.2/type.js.map create mode 100644 node_modules/tsutils/typeguard/index.js.map create mode 100644 node_modules/tsutils/typeguard/next/index.js.map create mode 100644 node_modules/tsutils/typeguard/next/node.js.map create mode 100644 node_modules/tsutils/typeguard/next/type.js.map create mode 100644 node_modules/tsutils/typeguard/node.js.map create mode 100644 node_modules/tsutils/typeguard/type.js.map create mode 100644 node_modules/tsutils/util/control-flow.js.map create mode 100644 node_modules/tsutils/util/convert-ast.js.map create mode 100644 node_modules/tsutils/util/index.js.map create mode 100644 node_modules/tsutils/util/type.js.map create mode 100644 node_modules/tsutils/util/usage.js.map create mode 100644 node_modules/tsutils/util/util.js.map diff --git a/PRESUBMIT.py b/PRESUBMIT.py index 382a6f80f1..2e23d9e240 100644 --- a/PRESUBMIT.py +++ b/PRESUBMIT.py @@ -229,6 +229,8 @@ def _CheckDevToolsStyleJS(input_api, output_api): eslint_related_files = [ input_api.os_path.join(input_api.PresubmitLocalPath(), 'node_modules', 'eslint'), + input_api.os_path.join(input_api.PresubmitLocalPath(), 'node_modules', + '@typescript-eslint'), input_api.os_path.join(input_api.PresubmitLocalPath(), '.eslintrc.js'), input_api.os_path.join(input_api.PresubmitLocalPath(), '.eslintignore'), diff --git a/front_end/object_ui/JavaScriptREPL.ts b/front_end/object_ui/JavaScriptREPL.ts index 33a64b0b72..a696da7a14 100644 --- a/front_end/object_ui/JavaScriptREPL.ts +++ b/front_end/object_ui/JavaScriptREPL.ts @@ -17,7 +17,7 @@ export class JavaScriptREPL { return code; } - const parse = (async(): Promise => 0).constructor; + const parse = (async (): Promise => 0).constructor; try { // Check if the code can be interpreted as an expression. parse('return ' + code + ';'); diff --git a/node_modules/@types/json-schema/README.md b/node_modules/@types/json-schema/README.md index 7dd268ce6f..3c1899ef92 100644 --- a/node_modules/@types/json-schema/README.md +++ b/node_modules/@types/json-schema/README.md @@ -8,7 +8,7 @@ This package contains type definitions for json-schema 4.0, 6.0 and (https://git Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/json-schema. ### Additional Details - * Last updated: Mon, 31 Aug 2020 21:41:49 GMT + * Last updated: Tue, 19 Jan 2021 23:09:28 GMT * Dependencies: none * Global values: none diff --git a/node_modules/@types/json-schema/index.d.ts b/node_modules/@types/json-schema/index.d.ts index be735fbf88..d2dd0995ea 100644 --- a/node_modules/@types/json-schema/index.d.ts +++ b/node_modules/@types/json-schema/index.d.ts @@ -16,7 +16,7 @@ * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.1 */ export type JSONSchema4TypeName = - | 'string' + | 'string' // | 'number' | 'integer' | 'boolean' @@ -29,7 +29,7 @@ export type JSONSchema4TypeName = * @see https://tools.ietf.org/html/draft-zyp-json-schema-04#section-3.5 */ export type JSONSchema4Type = - | string + | string // | number | boolean | JSONSchema4Object @@ -65,9 +65,9 @@ export type JSONSchema4Version = string; * @see https://tools.ietf.org/html/draft-zyp-json-schema-04 */ export interface JSONSchema4 { - id?: string - $ref?: string - $schema?: JSONSchema4Version + id?: string; + $ref?: string; + $schema?: JSONSchema4Version; /** * This attribute is a string that provides a short description of the @@ -75,7 +75,7 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.21 */ - title?: string + title?: string; /** * This attribute is a string that provides a full description of the of @@ -83,17 +83,17 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.22 */ - description?: string + description?: string; - default?: JSONSchema4Type - multipleOf?: number - maximum?: number - exclusiveMaximum?: boolean - minimum?: number - exclusiveMinimum?: boolean - maxLength?: number - minLength?: number - pattern?: string + default?: JSONSchema4Type; + multipleOf?: number; + maximum?: number; + exclusiveMaximum?: boolean; + minimum?: number; + exclusiveMinimum?: boolean; + maxLength?: number; + minLength?: number; + pattern?: string; /** * May only be defined when "items" is defined, and is a tuple of JSONSchemas. @@ -105,7 +105,7 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.6 */ - additionalItems?: boolean | JSONSchema4 + additionalItems?: boolean | JSONSchema4; /** * This attribute defines the allowed items in an instance array, and @@ -126,13 +126,13 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.5 */ - items?: JSONSchema4 | JSONSchema4[] + items?: JSONSchema4 | JSONSchema4[]; - maxItems?: number - minItems?: number - uniqueItems?: boolean - maxProperties?: number - minProperties?: number + maxItems?: number; + minItems?: number; + uniqueItems?: boolean; + maxProperties?: number; + minProperties?: number; /** * This attribute indicates if the instance must have a value, and not @@ -141,7 +141,7 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.7 */ - required?: false | string[] + required?: false | string[]; /** * This attribute defines a schema for all properties that are not @@ -153,11 +153,11 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.4 */ - additionalProperties?: boolean | JSONSchema4 + additionalProperties?: boolean | JSONSchema4; definitions?: { - [k: string]: JSONSchema4 - } + [k: string]: JSONSchema4; + }; /** * This attribute is an object with property definitions that define the @@ -173,8 +173,8 @@ export interface JSONSchema4 { * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.2 */ properties?: { - [k: string]: JSONSchema4 - } + [k: string]: JSONSchema4; + }; /** * This attribute is an object that defines the schema for a set of @@ -188,11 +188,11 @@ export interface JSONSchema4 { * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.3 */ patternProperties?: { - [k: string]: JSONSchema4 - } + [k: string]: JSONSchema4; + }; dependencies?: { - [k: string]: JSONSchema4 | string[] - } + [k: string]: JSONSchema4 | string[]; + }; /** * This provides an enumeration of all possible values that are valid @@ -203,17 +203,17 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.19 */ - enum?: JSONSchema4Type[] + enum?: JSONSchema4Type[]; /** * A single type, or a union of simple types */ - type?: JSONSchema4TypeName | JSONSchema4TypeName[] + type?: JSONSchema4TypeName | JSONSchema4TypeName[]; - allOf?: JSONSchema4[] - anyOf?: JSONSchema4[] - oneOf?: JSONSchema4[] - not?: JSONSchema4 + allOf?: JSONSchema4[]; + anyOf?: JSONSchema4[]; + oneOf?: JSONSchema4[]; + not?: JSONSchema4; /** * The value of this property MUST be another schema which will provide @@ -231,14 +231,14 @@ export interface JSONSchema4 { * * @see https://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.26 */ - extends?: string | string[] + extends?: string | string[]; /** * @see https://tools.ietf.org/html/draft-zyp-json-schema-04#section-5.6 */ - [k: string]: any + [k: string]: any; - format?: string + format?: string; } //================================================================================================== @@ -246,7 +246,7 @@ export interface JSONSchema4 { //================================================================================================== export type JSONSchema6TypeName = - | 'string' + | 'string' // | 'number' | 'integer' | 'boolean' @@ -256,7 +256,7 @@ export type JSONSchema6TypeName = | 'any'; export type JSONSchema6Type = - | string + | string // | number | boolean | JSONSchema6Object @@ -291,51 +291,51 @@ export type JSONSchema6Version = string; */ export type JSONSchema6Definition = JSONSchema6 | boolean; export interface JSONSchema6 { - $id?: string - $ref?: string - $schema?: JSONSchema6Version + $id?: string; + $ref?: string; + $schema?: JSONSchema6Version; /** * Must be strictly greater than 0. * A numeric instance is valid only if division by this keyword's value results in an integer. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.1 */ - multipleOf?: number + multipleOf?: number; /** * Representing an inclusive upper limit for a numeric instance. * This keyword validates only if the instance is less than or exactly equal to "maximum". * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.2 */ - maximum?: number + maximum?: number; /** * Representing an exclusive upper limit for a numeric instance. * This keyword validates only if the instance is strictly less than (not equal to) to "exclusiveMaximum". * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.3 */ - exclusiveMaximum?: number + exclusiveMaximum?: number; /** * Representing an inclusive lower limit for a numeric instance. * This keyword validates only if the instance is greater than or exactly equal to "minimum". * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.4 */ - minimum?: number + minimum?: number; /** * Representing an exclusive lower limit for a numeric instance. * This keyword validates only if the instance is strictly greater than (not equal to) to "exclusiveMinimum". * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.5 */ - exclusiveMinimum?: number + exclusiveMinimum?: number; /** * Must be a non-negative integer. * A string instance is valid against this keyword if its length is less than, or equal to, the value of this keyword. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.6 */ - maxLength?: number + maxLength?: number; /** * Must be a non-negative integer. @@ -343,20 +343,20 @@ export interface JSONSchema6 { * Omitting this keyword has the same behavior as a value of 0. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.7 */ - minLength?: number + minLength?: number; /** * Should be a valid regular expression, according to the ECMA 262 regular expression dialect. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.8 */ - pattern?: string + pattern?: string; /** * This keyword determines how child instances validate for arrays, and does not directly validate the immediate instance itself. * Omitting this keyword has the same behavior as an empty schema. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.9 */ - items?: JSONSchema6Definition | JSONSchema6Definition[] + items?: JSONSchema6Definition | JSONSchema6Definition[]; /** * This keyword determines how child instances validate for arrays, and does not directly validate the immediate instance itself. @@ -367,14 +367,14 @@ export interface JSONSchema6 { * Omitting this keyword has the same behavior as an empty schema. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.10 */ - additionalItems?: JSONSchema6Definition + additionalItems?: JSONSchema6Definition; /** * Must be a non-negative integer. * An array instance is valid against "maxItems" if its size is less than, or equal to, the value of this keyword. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.11 */ - maxItems?: number + maxItems?: number; /** * Must be a non-negative integer. @@ -382,7 +382,7 @@ export interface JSONSchema6 { * Omitting this keyword has the same behavior as a value of 0. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.12 */ - minItems?: number + minItems?: number; /** * If this keyword has boolean value false, the instance validates successfully. @@ -390,20 +390,20 @@ export interface JSONSchema6 { * Omitting this keyword has the same behavior as a value of false. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.13 */ - uniqueItems?: boolean + uniqueItems?: boolean; /** * An array instance is valid against "contains" if at least one of its elements is valid against the given schema. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.14 */ - contains?: JSONSchema6Definition + contains?: JSONSchema6Definition; /** * Must be a non-negative integer. * An object instance is valid against "maxProperties" if its number of properties is less than, or equal to, the value of this keyword. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.15 */ - maxProperties?: number + maxProperties?: number; /** * Must be a non-negative integer. @@ -412,7 +412,7 @@ export interface JSONSchema6 { * Omitting this keyword has the same behavior as a value of 0. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.16 */ - minProperties?: number + minProperties?: number; /** * Elements of this array must be unique. @@ -421,7 +421,7 @@ export interface JSONSchema6 { * * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.17 */ - required?: string[] + required?: string[]; /** * This keyword determines how child instances validate for objects, and does not directly validate the immediate instance itself. @@ -431,8 +431,8 @@ export interface JSONSchema6 { * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.18 */ properties?: { - [k: string]: JSONSchema6Definition - } + [k: string]: JSONSchema6Definition; + }; /** * This attribute is an object that defines the schema for a set of property names of an object instance. @@ -443,8 +443,8 @@ export interface JSONSchema6 { * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.19 */ patternProperties?: { - [k: string]: JSONSchema6Definition - } + [k: string]: JSONSchema6Definition; + }; /** * This attribute defines a schema for all properties that are not explicitly defined in an object type definition. @@ -453,7 +453,7 @@ export interface JSONSchema6 { * The default value is an empty schema which allows any value for additional properties. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.20 */ - additionalProperties?: JSONSchema6Definition + additionalProperties?: JSONSchema6Definition; /** * This keyword specifies rules that are evaluated if the instance is an object and contains a certain property. @@ -463,8 +463,8 @@ export interface JSONSchema6 { * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.21 */ dependencies?: { - [k: string]: JSONSchema6Definition | string[] - } + [k: string]: JSONSchema6Definition | string[]; + }; /** * Takes a schema which validates the names of all properties rather than their values. @@ -472,7 +472,7 @@ export interface JSONSchema6 { * Omitting this keyword has the same behavior as an empty schema. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.22 */ - propertyNames?: JSONSchema6Definition + propertyNames?: JSONSchema6Definition; /** * This provides an enumeration of all possible values that are valid @@ -483,78 +483,78 @@ export interface JSONSchema6 { * * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.23 */ - enum?: JSONSchema6Type[] + enum?: JSONSchema6Type[]; /** * More readable form of a one-element "enum" * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.24 */ - const?: JSONSchema6Type + const?: JSONSchema6Type; /** * A single type, or a union of simple types * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.25 */ - type?: JSONSchema6TypeName | JSONSchema6TypeName[] + type?: JSONSchema6TypeName | JSONSchema6TypeName[]; /** * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.26 */ - allOf?: JSONSchema6Definition[] + allOf?: JSONSchema6Definition[]; /** * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.27 */ - anyOf?: JSONSchema6Definition[] + anyOf?: JSONSchema6Definition[]; /** * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.28 */ - oneOf?: JSONSchema6Definition[] + oneOf?: JSONSchema6Definition[]; /** * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.29 */ - not?: JSONSchema6Definition + not?: JSONSchema6Definition; /** * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-7.1 */ definitions?: { - [k: string]: JSONSchema6Definition - } + [k: string]: JSONSchema6Definition; + }; /** * This attribute is a string that provides a short description of the instance property. * * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-7.2 */ - title?: string + title?: string; /** * This attribute is a string that provides a full description of the of purpose the instance property. * * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-7.2 */ - description?: string + description?: string; /** * This keyword can be used to supply a default JSON value associated with a particular schema. * It is RECOMMENDED that a default value be valid against the associated schema. * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-7.3 */ - default?: JSONSchema6Type + default?: JSONSchema6Type; /** * Array of examples with no validation effect the value of "default" is usable as an example without repeating it under this keyword * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-7.4 */ - examples?: JSONSchema6Type[] + examples?: JSONSchema6Type[]; /** * @see https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-8 */ - format?: string + format?: string; } //================================================================================================== @@ -568,7 +568,7 @@ export interface JSONSchema6 { * @see https://tools.ietf.org/html/draft-handrews-json-schema-validation-01#section-6.1.1 */ export type JSONSchema7TypeName = - | 'string' + | 'string' // | 'number' | 'integer' | 'boolean' @@ -581,7 +581,7 @@ export type JSONSchema7TypeName = * @see https://tools.ietf.org/html/draft-handrews-json-schema-validation-01#section-6.1.1 */ export type JSONSchema7Type = - | string + | string // | number | boolean | JSONSchema7Object @@ -739,7 +739,11 @@ export function validate(instance: {}, schema: JSONSchema4 | JSONSchema6 | JSONS * This is slightly different than the validate method in that it will fail if the schema is readonly and it will * not check for self-validation, it is assumed that the passed in value is already internally valid. */ -export function checkPropertyChange(value: any, schema: JSONSchema4 | JSONSchema6 | JSONSchema7, property: string): ValidationResult; +export function checkPropertyChange( + value: any, + schema: JSONSchema4 | JSONSchema6 | JSONSchema7, + property: string, +): ValidationResult; /** * This checks to ensure that the result is valid and will throw an appropriate error message if it is not. diff --git a/node_modules/@types/json-schema/package.json b/node_modules/@types/json-schema/package.json index f6cec414e6..ced65a8896 100644 --- a/node_modules/@types/json-schema/package.json +++ b/node_modules/@types/json-schema/package.json @@ -37,8 +37,8 @@ "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git" }, "scripts": {}, - "typeScriptVersion": "3.1", + "typeScriptVersion": "3.4", "types": "index.d.ts", - "typesPublisherContentHash": "bb4b22e70ee94bf7b787307444fcee2f57a8869f012a460ed8f15b5b6985ed70", - "version": "7.0.6" + "typesPublisherContentHash": "ef06c3e504eafcb78cb50a8ec27cdd4d6e863f83efa5622123a703af98c53075", + "version": "7.0.7" } diff --git a/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md b/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md index 1e3706cddb..0e95c9c514 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md +++ b/node_modules/@typescript-eslint/eslint-plugin/CHANGELOG.md @@ -3,6 +3,143 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.2...v4.15.0) (2021-02-08) + + +### Bug Fixes + +* **eslint-plugin:** [no-extra-parens] handle ESLint 7.19.0 ([#2993](https://github.com/typescript-eslint/typescript-eslint/issues/2993)) ([4615048](https://github.com/typescript-eslint/typescript-eslint/commit/4615048d24359e0fc57b90a96acf4d8ded1dc7bf)) +* **eslint-plugin:** [prefer-function-type] correct fixer when signature ends with a semi ([#3002](https://github.com/typescript-eslint/typescript-eslint/issues/3002)) ([898dd39](https://github.com/typescript-eslint/typescript-eslint/commit/898dd3961944a5da3a129e9eba02634286e7aee4)) +* **scope-manager:** fix visiting of TSImportType ([#3008](https://github.com/typescript-eslint/typescript-eslint/issues/3008)) ([ce4fcbf](https://github.com/typescript-eslint/typescript-eslint/commit/ce4fcbf4401098387a2cf19ae8457c89c509239a)), closes [#3006](https://github.com/typescript-eslint/typescript-eslint/issues/3006) + + + + + +## [4.14.2](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.1...v4.14.2) (2021-02-01) + + +### Bug Fixes + +* **eslint-plugin:** [consistent-type-imports] incorrect handling of computed property type signatures ([#2990](https://github.com/typescript-eslint/typescript-eslint/issues/2990)) ([58f2655](https://github.com/typescript-eslint/typescript-eslint/commit/58f26555f62b5f59f13260306638d3148cde6079)), closes [#2989](https://github.com/typescript-eslint/typescript-eslint/issues/2989) +* **scope-manager:** correctly reference generic parameters when decorator metadata is enabled ([#2975](https://github.com/typescript-eslint/typescript-eslint/issues/2975)) ([7695ef3](https://github.com/typescript-eslint/typescript-eslint/commit/7695ef318f1cc8688acaabf4f2730769622f083f)), closes [#2972](https://github.com/typescript-eslint/typescript-eslint/issues/2972) + + + + + +## [4.14.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.0...v4.14.1) (2021-01-25) + + +### Bug Fixes + +* **eslint-plugin:** [sort-type-union-intersection-members] consider `void` as a `nullish` ([#2944](https://github.com/typescript-eslint/typescript-eslint/issues/2944)) ([a241b25](https://github.com/typescript-eslint/typescript-eslint/commit/a241b25863eb063986fab76b511f478bbba91f47)), closes [#2940](https://github.com/typescript-eslint/typescript-eslint/issues/2940) +* **scope-manager:** fix incorrect handling of class decorators and class method default params ([#2943](https://github.com/typescript-eslint/typescript-eslint/issues/2943)) ([e1eac83](https://github.com/typescript-eslint/typescript-eslint/commit/e1eac8312268d1855a2ed7784b4d190ecb9c9fa4)), closes [#2941](https://github.com/typescript-eslint/typescript-eslint/issues/2941) [#2942](https://github.com/typescript-eslint/typescript-eslint/issues/2942) [#2751](https://github.com/typescript-eslint/typescript-eslint/issues/2751) + + + + + +# [4.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.13.0...v4.14.0) (2021-01-18) + + +### Features + +* add support for decorator metadata in scope analysis and in consistent-type-imports ([#2751](https://github.com/typescript-eslint/typescript-eslint/issues/2751)) ([445e416](https://github.com/typescript-eslint/typescript-eslint/commit/445e416878b27a54bf07c2d3b84dabd7b06e51bc)), closes [#2559](https://github.com/typescript-eslint/typescript-eslint/issues/2559) +* **eslint-plugin:** add `object-curly-spacing` rule ([#2892](https://github.com/typescript-eslint/typescript-eslint/issues/2892)) ([32bd18d](https://github.com/typescript-eslint/typescript-eslint/commit/32bd18de80f4f8388717d0f0c16d493234362aa5)) + + + + + +# [4.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.12.0...v4.13.0) (2021-01-11) + + +### Bug Fixes + +* **eslint-plugin:** support eslint@5 ([#2917](https://github.com/typescript-eslint/typescript-eslint/issues/2917)) ([f606846](https://github.com/typescript-eslint/typescript-eslint/commit/f606846af2617a0d8ee3ad5ce7c10864161ebf53)) + + +### Features + +* **eslint-plugin:** [sort-type-union-intersection-members] add nullish group ([#2919](https://github.com/typescript-eslint/typescript-eslint/issues/2919)) ([5558f41](https://github.com/typescript-eslint/typescript-eslint/commit/5558f410007da58a3f4726bbf9501c924ef166a1)) + + + + + +# [4.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.1...v4.12.0) (2021-01-04) + + +### Bug Fixes + +* **eslint-plugin:** [comma-spacing] handle empty type params ([#2915](https://github.com/typescript-eslint/typescript-eslint/issues/2915)) ([4d69fbb](https://github.com/typescript-eslint/typescript-eslint/commit/4d69fbba91ea3161213a0ab093e398fed091168c)) + + +### Features + +* **eslint-plugin:** add rule `sort-type-union-intersection-members` ([#2913](https://github.com/typescript-eslint/typescript-eslint/issues/2913)) ([9092c04](https://github.com/typescript-eslint/typescript-eslint/commit/9092c0494ebd3486e38852198c1930f1432ef21f)) + + + + + +## [4.11.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.0...v4.11.1) (2020-12-28) + + +### Bug Fixes + +* **eslint-plugin:** [naming-convention] fix precedence of method and property meta selectors ([#2877](https://github.com/typescript-eslint/typescript-eslint/issues/2877)) ([2f10e1a](https://github.com/typescript-eslint/typescript-eslint/commit/2f10e1a5c795cac28a6e0a1a3a0adb5bd6be7f1c)) + + + + + +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + + +### Bug Fixes + +* **eslint-plugin:** [non-nullable-type-assertion-style] handle const assertion ([#2881](https://github.com/typescript-eslint/typescript-eslint/issues/2881)) ([53dc34d](https://github.com/typescript-eslint/typescript-eslint/commit/53dc34d3917b90c8ab0324fe8054619ddee98003)) + + +### Features + +* **eslint-plugin:** [prom-func-async] add automatic fix ([#2845](https://github.com/typescript-eslint/typescript-eslint/issues/2845)) ([717e718](https://github.com/typescript-eslint/typescript-eslint/commit/717e718e91df2165422228c02dfa248cf55f65a1)) + + + + + +# [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) + + +### Bug Fixes + +* **eslint-plugin:** [naming-convention] fix wrong member of `method` and `property` meta selectors ([#2856](https://github.com/typescript-eslint/typescript-eslint/issues/2856)) ([9a6c362](https://github.com/typescript-eslint/typescript-eslint/commit/9a6c3628a2f3a7748b7a4b9b0c55400c8d7dfeae)) + + +### Features + +* **eslint-plugin:** add rule `non-nullable-type-assertion-style` ([#2624](https://github.com/typescript-eslint/typescript-eslint/issues/2624)) ([7eee44f](https://github.com/typescript-eslint/typescript-eslint/commit/7eee44fff3041a9725d34bf2fcbfc6fd40a60c61)) + + + + + +## [4.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.0...v4.9.1) (2020-12-07) + + +### Bug Fixes + +* **eslint-plugin:** [method-signature-style] fix crash with methods without a return type ([#2836](https://github.com/typescript-eslint/typescript-eslint/issues/2836)) ([fed89f2](https://github.com/typescript-eslint/typescript-eslint/commit/fed89f24ebe42a6412f0eb19949d5d4771656189)), closes [#2834](https://github.com/typescript-eslint/typescript-eslint/issues/2834) +* **eslint-plugin:** [no-unused-vars] false-positive with class expressions ([#2833](https://github.com/typescript-eslint/typescript-eslint/issues/2833)) ([aadb39f](https://github.com/typescript-eslint/typescript-eslint/commit/aadb39f0ff500ee99ea80e9009ab61283ca9c8cd)), closes [#2831](https://github.com/typescript-eslint/typescript-eslint/issues/2831) +* **eslint-plugin:** [no-unused-vars] fix race condition between naming-convention and no-unused-vars ([#2848](https://github.com/typescript-eslint/typescript-eslint/issues/2848)) ([ccb6b94](https://github.com/typescript-eslint/typescript-eslint/commit/ccb6b9499a4a4077f2e3d81d0844860a25244a0f)), closes [#2844](https://github.com/typescript-eslint/typescript-eslint/issues/2844) + + + + + # [4.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.8.2...v4.9.0) (2020-11-30) diff --git a/node_modules/@typescript-eslint/eslint-plugin/README.md b/node_modules/@typescript-eslint/eslint-plugin/README.md index 4cf27e64a8..3a504fe7d8 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/README.md +++ b/node_modules/@typescript-eslint/eslint-plugin/README.md @@ -148,6 +148,7 @@ Pro Tip: For larger codebases you may want to consider splitting our linting int | [`@typescript-eslint/no-unsafe-member-access`](./docs/rules/no-unsafe-member-access.md) | Disallows member access on any typed variables | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/no-unsafe-return`](./docs/rules/no-unsafe-return.md) | Disallows returning any from a function | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/no-var-requires`](./docs/rules/no-var-requires.md) | Disallows the use of require statements except in import statements | :heavy_check_mark: | | | +| [`@typescript-eslint/non-nullable-type-assertion-style`](./docs/rules/non-nullable-type-assertion-style.md) | Prefers a non-null assertion over explicit type cast when possible | | :wrench: | :thought_balloon: | | [`@typescript-eslint/prefer-as-const`](./docs/rules/prefer-as-const.md) | Prefer usage of `as const` over literal type | :heavy_check_mark: | :wrench: | | | [`@typescript-eslint/prefer-enum-initializers`](./docs/rules/prefer-enum-initializers.md) | Prefer initializing each enums member value | | | | | [`@typescript-eslint/prefer-for-of`](./docs/rules/prefer-for-of.md) | Prefer a ‘for-of’ loop over a standard ‘for’ loop if the index is only used to access the array being iterated | | | | @@ -163,10 +164,11 @@ Pro Tip: For larger codebases you may want to consider splitting our linting int | [`@typescript-eslint/prefer-regexp-exec`](./docs/rules/prefer-regexp-exec.md) | Enforce that `RegExp#exec` is used instead of `String#match` if no global flag is provided | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/prefer-string-starts-ends-with`](./docs/rules/prefer-string-starts-ends-with.md) | Enforce the use of `String#startsWith` and `String#endsWith` instead of other equivalent methods of checking substrings | | :wrench: | :thought_balloon: | | [`@typescript-eslint/prefer-ts-expect-error`](./docs/rules/prefer-ts-expect-error.md) | Recommends using `@ts-expect-error` over `@ts-ignore` | | :wrench: | | -| [`@typescript-eslint/promise-function-async`](./docs/rules/promise-function-async.md) | Requires any function or method that returns a Promise to be marked async | | | :thought_balloon: | +| [`@typescript-eslint/promise-function-async`](./docs/rules/promise-function-async.md) | Requires any function or method that returns a Promise to be marked async | | :wrench: | :thought_balloon: | | [`@typescript-eslint/require-array-sort-compare`](./docs/rules/require-array-sort-compare.md) | Requires `Array#sort` calls to always provide a `compareFunction` | | | :thought_balloon: | | [`@typescript-eslint/restrict-plus-operands`](./docs/rules/restrict-plus-operands.md) | When adding two variables, operands must both be of type number or of type string | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/restrict-template-expressions`](./docs/rules/restrict-template-expressions.md) | Enforce template literal expressions to be of string type | :heavy_check_mark: | | :thought_balloon: | +| [`@typescript-eslint/sort-type-union-intersection-members`](./docs/rules/sort-type-union-intersection-members.md) | Enforces that members of a type union/intersection are sorted alphabetically | | :wrench: | | | [`@typescript-eslint/strict-boolean-expressions`](./docs/rules/strict-boolean-expressions.md) | Restricts the types allowed in boolean expressions | | | :thought_balloon: | | [`@typescript-eslint/switch-exhaustiveness-check`](./docs/rules/switch-exhaustiveness-check.md) | Exhaustiveness checking in switch with union type | | | :thought_balloon: | | [`@typescript-eslint/triple-slash-reference`](./docs/rules/triple-slash-reference.md) | Sets preference level for triple slash directives versus ES6-style import declarations | :heavy_check_mark: | | | @@ -216,6 +218,7 @@ In these cases, we create what we call an extension rule; a rule within our plug | [`@typescript-eslint/no-unused-vars`](./docs/rules/no-unused-vars.md) | Disallow unused variables | :heavy_check_mark: | | | | [`@typescript-eslint/no-use-before-define`](./docs/rules/no-use-before-define.md) | Disallow the use of variables before they are defined | | | | | [`@typescript-eslint/no-useless-constructor`](./docs/rules/no-useless-constructor.md) | Disallow unnecessary constructors | | | | +| [`@typescript-eslint/object-curly-spacing`](./docs/rules/object-curly-spacing.md) | Enforce consistent spacing inside braces | | :wrench: | | | [`@typescript-eslint/quotes`](./docs/rules/quotes.md) | Enforce the consistent use of either backticks, double, or single quotes | | :wrench: | | | [`@typescript-eslint/require-await`](./docs/rules/require-await.md) | Disallow async functions which have no `await` expression | :heavy_check_mark: | | :thought_balloon: | | [`@typescript-eslint/return-await`](./docs/rules/return-await.md) | Enforces consistent returning of awaited values | | :wrench: | :thought_balloon: | diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js index 9f0ba27767..a0448530b0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js @@ -112,6 +112,9 @@ module.exports = { 'no-useless-constructor': 'off', '@typescript-eslint/no-useless-constructor': 'error', '@typescript-eslint/no-var-requires': 'error', + '@typescript-eslint/non-nullable-type-assertion-style': 'error', + 'object-curly-spacing': 'off', + '@typescript-eslint/object-curly-spacing': 'error', '@typescript-eslint/prefer-as-const': 'error', '@typescript-eslint/prefer-enum-initializers': 'error', '@typescript-eslint/prefer-for-of': 'error', @@ -139,6 +142,7 @@ module.exports = { '@typescript-eslint/return-await': 'error', semi: 'off', '@typescript-eslint/semi': 'error', + '@typescript-eslint/sort-type-union-intersection-members': 'error', 'space-before-function-paren': 'off', '@typescript-eslint/space-before-function-paren': 'error', 'space-infix-ops': 'off', diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map index e155162e0b..93ef815666 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/configs/all.js.map @@ -1 +1 @@ -{"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/configs/all.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/configs/all.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js index 6e2c440666..791fbe54cf 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js @@ -69,10 +69,13 @@ exports.default = util_1.createRule({ * @param node node to evaluate */ function addTypeParametersTrailingCommaToIgnoreList(node) { - const param = node.params[node.params.length - 1]; - const afterToken = sourceCode.getTokenAfter(param); - if (afterToken && util_1.isCommaToken(afterToken)) { - ignoredTokens.add(afterToken); + const paramLength = node.params.length; + if (paramLength) { + const param = node.params[paramLength - 1]; + const afterToken = sourceCode.getTokenAfter(param); + if (afterToken && util_1.isCommaToken(afterToken)) { + ignoredTokens.add(afterToken); + } } } /** diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map index 9ddd17a655..a3ede4d4b8 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-spacing.js.map @@ -1 +1 @@ -{"version":3,"file":"comma-spacing.js","sourceRoot":"","sources":["../../src/rules/comma-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"comma-spacing.js","sourceRoot":"","sources":["../../src/rules/comma-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js index 15d365d350..c5c7316da4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js @@ -40,6 +40,8 @@ exports.default = util.createRule({ typeOverValue: 'All imports in the declaration are only used as types. Use `import type`', someImportsAreOnlyTypes: 'Imports {{typeImports}} are only used as types', aImportIsOnlyTypes: 'Import {{typeImports}} is only used as types', + someImportsInDecoMeta: 'Type imports {{typeImports}} are used by decorator metadata', + aImportInDecoMeta: 'Type import {{typeImports}} is used by decorator metadata', valueOverType: 'Use an `import` instead of an `import type`.', noImportTypeAnnotations: '`import()` type annotations are forbidden.', }, @@ -81,15 +83,20 @@ exports.default = util.createRule({ source, reportValueImports: [], typeOnlyNamedImport: null, + valueOnlyNamedImport: null, }); if (node.importKind === 'type') { if (!sourceImports.typeOnlyNamedImport && node.specifiers.every(specifier => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportSpecifier)) { sourceImports.typeOnlyNamedImport = node; } - return; } - // if importKind === 'value' + else { + if (!sourceImports.valueOnlyNamedImport && + node.specifiers.every(specifier => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportSpecifier)) { + sourceImports.valueOnlyNamedImport = node; + } + } const typeSpecifiers = []; const valueSpecifiers = []; const unusedSpecifiers = []; @@ -100,21 +107,58 @@ exports.default = util.createRule({ } else { const onlyHasTypeReferences = variable.references.every(ref => { - if (ref.isValueReference) { - // `type T = typeof foo` will create a value reference because "foo" must be a value type - // however this value reference is safe to use with type-only imports - let parent = ref.identifier.parent; - while (parent) { - if (parent.type === experimental_utils_1.AST_NODE_TYPES.TSTypeQuery) { - return true; - } - // TSTypeQuery must have a TSESTree.EntityName as its child, so we can filter here and break early - if (parent.type !== experimental_utils_1.AST_NODE_TYPES.TSQualifiedName) { - break; - } - parent = parent.parent; + var _a, _b; + /** + * keep origin import kind when export + * export { Type } + * export default Type; + */ + if (((_a = ref.identifier.parent) === null || _a === void 0 ? void 0 : _a.type) === + experimental_utils_1.AST_NODE_TYPES.ExportSpecifier || + ((_b = ref.identifier.parent) === null || _b === void 0 ? void 0 : _b.type) === + experimental_utils_1.AST_NODE_TYPES.ExportDefaultDeclaration) { + if (ref.isValueReference && ref.isTypeReference) { + return node.importKind === 'type'; + } + } + if (ref.isValueReference) { + let parent = ref.identifier.parent; + let child = ref.identifier; + while (parent) { + switch (parent.type) { + // CASE 1: + // `type T = typeof foo` will create a value reference because "foo" must be a value type + // however this value reference is safe to use with type-only imports + case experimental_utils_1.AST_NODE_TYPES.TSTypeQuery: + return true; + case experimental_utils_1.AST_NODE_TYPES.TSQualifiedName: + // TSTypeQuery must have a TSESTree.EntityName as its child, so we can filter here and break early + if (parent.left !== child) { + return false; + } + child = parent; + parent = parent.parent; + continue; + // END CASE 1 + ////////////// + // CASE 2: + // `type T = { [foo]: string }` will create a value reference because "foo" must be a value type + // however this value reference is safe to use with type-only imports. + // Also this is represented as a non-type AST - hence it uses MemberExpression + case experimental_utils_1.AST_NODE_TYPES.TSPropertySignature: + return parent.key === child; + case experimental_utils_1.AST_NODE_TYPES.MemberExpression: + if (parent.object !== child) { + return false; + } + child = parent; + parent = parent.parent; + continue; + // END CASE 2 + default: + return false; + } } - return false; } return ref.isTypeReference; }); @@ -126,7 +170,8 @@ exports.default = util.createRule({ } } } - if (typeSpecifiers.length) { + if ((node.importKind === 'value' && typeSpecifiers.length) || + (node.importKind === 'type' && valueSpecifiers.length)) { sourceImports.reportValueImports.push({ node, typeSpecifiers, @@ -153,25 +198,54 @@ exports.default = util.createRule({ }); } else { + const isTypeImport = report.node.importKind === 'type'; // we have a mixed type/value import, so we need to split them out into multiple exports - const typeImportNames = report.typeSpecifiers.map(specifier => `"${specifier.local.name}"`); - context.report({ - node: report.node, - messageId: typeImportNames.length === 1 - ? 'aImportIsOnlyTypes' - : 'someImportsAreOnlyTypes', - data: { - typeImports: typeImportNames.length === 1 - ? typeImportNames[0] - : [ - typeImportNames.slice(0, -1).join(', '), - typeImportNames.slice(-1)[0], - ].join(' and '), - }, - *fix(fixer) { - yield* fixToTypeImport(fixer, report, sourceImports); - }, - }); + const importNames = (isTypeImport + ? report.valueSpecifiers + : report.typeSpecifiers).map(specifier => `"${specifier.local.name}"`); + const message = (() => { + if (importNames.length === 1) { + const typeImports = importNames[0]; + if (isTypeImport) { + return { + messageId: 'aImportInDecoMeta', + data: { typeImports }, + }; + } + else { + return { + messageId: 'aImportIsOnlyTypes', + data: { typeImports }, + }; + } + } + else { + const typeImports = [ + importNames.slice(0, -1).join(', '), + importNames.slice(-1)[0], + ].join(' and '); + if (isTypeImport) { + return { + messageId: 'someImportsInDecoMeta', + data: { typeImports }, + }; + } + else { + return { + messageId: 'someImportsAreOnlyTypes', + data: { typeImports }, + }; + } + } + })(); + context.report(Object.assign(Object.assign({ node: report.node }, message), { *fix(fixer) { + if (isTypeImport) { + yield* fixToValueImportInDecoMeta(fixer, report, sourceImports); + } + else { + yield* fixToTypeImport(fixer, report, sourceImports); + } + } })); } } } @@ -199,14 +273,116 @@ exports.default = util.createRule({ }, } : {})); - function* fixToTypeImport(fixer, report, sourceImports) { + function classifySpecifier(node) { var _a; - const { node } = report; const defaultSpecifier = node.specifiers[0].type === experimental_utils_1.AST_NODE_TYPES.ImportDefaultSpecifier ? node.specifiers[0] : null; const namespaceSpecifier = (_a = node.specifiers.find((specifier) => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportNamespaceSpecifier)) !== null && _a !== void 0 ? _a : null; const namedSpecifiers = node.specifiers.filter((specifier) => specifier.type === experimental_utils_1.AST_NODE_TYPES.ImportSpecifier); + return { + defaultSpecifier, + namespaceSpecifier, + namedSpecifiers, + }; + } + /** + * Returns information for fixing named specifiers. + */ + function getFixesNamedSpecifiers(fixer, node, typeNamedSpecifiers, allNamedSpecifiers) { + if (allNamedSpecifiers.length === 0) { + return { + typeNamedSpecifiersText: '', + removeTypeNamedSpecifiers: [], + }; + } + const typeNamedSpecifiersTexts = []; + const removeTypeNamedSpecifiers = []; + if (typeNamedSpecifiers.length === allNamedSpecifiers.length) { + // e.g. + // import Foo, {Type1, Type2} from 'foo' + // import DefType, {Type1, Type2} from 'foo' + const openingBraceToken = util.nullThrows(sourceCode.getTokenBefore(typeNamedSpecifiers[0], util.isOpeningBraceToken), util.NullThrowsReasons.MissingToken('{', node.type)); + const commaToken = util.nullThrows(sourceCode.getTokenBefore(openingBraceToken, util.isCommaToken), util.NullThrowsReasons.MissingToken(',', node.type)); + const closingBraceToken = util.nullThrows(sourceCode.getFirstTokenBetween(openingBraceToken, node.source, util.isClosingBraceToken), util.NullThrowsReasons.MissingToken('}', node.type)); + // import DefType, {...} from 'foo' + // ^^^^^^^ remove + removeTypeNamedSpecifiers.push(fixer.removeRange([commaToken.range[0], closingBraceToken.range[1]])); + typeNamedSpecifiersTexts.push(sourceCode.text.slice(openingBraceToken.range[1], closingBraceToken.range[0])); + } + else { + const typeNamedSpecifierGroups = []; + let group = []; + for (const namedSpecifier of allNamedSpecifiers) { + if (typeNamedSpecifiers.includes(namedSpecifier)) { + group.push(namedSpecifier); + } + else if (group.length) { + typeNamedSpecifierGroups.push(group); + group = []; + } + } + if (group.length) { + typeNamedSpecifierGroups.push(group); + } + for (const namedSpecifiers of typeNamedSpecifierGroups) { + const { removeRange, textRange } = getNamedSpecifierRanges(namedSpecifiers, allNamedSpecifiers); + removeTypeNamedSpecifiers.push(fixer.removeRange(removeRange)); + typeNamedSpecifiersTexts.push(sourceCode.text.slice(...textRange)); + } + } + return { + typeNamedSpecifiersText: typeNamedSpecifiersTexts.join(','), + removeTypeNamedSpecifiers, + }; + } + /** + * Returns ranges for fixing named specifier. + */ + function getNamedSpecifierRanges(namedSpecifierGroup, allNamedSpecifiers) { + const first = namedSpecifierGroup[0]; + const last = namedSpecifierGroup[namedSpecifierGroup.length - 1]; + const removeRange = [first.range[0], last.range[1]]; + const textRange = [...removeRange]; + const before = sourceCode.getTokenBefore(first); + textRange[0] = before.range[1]; + if (util.isCommaToken(before)) { + removeRange[0] = before.range[0]; + } + else { + removeRange[0] = before.range[1]; + } + const isFirst = allNamedSpecifiers[0] === first; + const isLast = allNamedSpecifiers[allNamedSpecifiers.length - 1] === last; + const after = sourceCode.getTokenAfter(last); + textRange[1] = after.range[0]; + if (isFirst || isLast) { + if (util.isCommaToken(after)) { + removeRange[1] = after.range[1]; + } + } + return { + textRange, + removeRange, + }; + } + /** + * insert specifiers to named import node. + * e.g. + * import type { Already, Type1, Type2 } from 'foo' + * ^^^^^^^^^^^^^ insert + */ + function insertToNamedImport(fixer, target, insertText) { + const closingBraceToken = util.nullThrows(sourceCode.getFirstTokenBetween(sourceCode.getFirstToken(target), target.source, util.isClosingBraceToken), util.NullThrowsReasons.MissingToken('}', target.type)); + const before = sourceCode.getTokenBefore(closingBraceToken); + if (!util.isCommaToken(before) && !util.isOpeningBraceToken(before)) { + insertText = ',' + insertText; + } + return fixer.insertTextBefore(closingBraceToken, insertText); + } + function* fixToTypeImport(fixer, report, sourceImports) { + const { node } = report; + const { defaultSpecifier, namespaceSpecifier, namedSpecifiers, } = classifySpecifier(node); if (namespaceSpecifier && !defaultSpecifier) { // e.g. // import * as types from 'foo' @@ -233,19 +409,11 @@ exports.default = util.createRule({ } } const typeNamedSpecifiers = namedSpecifiers.filter(specifier => report.typeSpecifiers.includes(specifier)); - const fixesNamedSpecifiers = getFixesNamedSpecifiers(typeNamedSpecifiers, namedSpecifiers); + const fixesNamedSpecifiers = getFixesNamedSpecifiers(fixer, node, typeNamedSpecifiers, namedSpecifiers); const afterFixes = []; if (typeNamedSpecifiers.length) { if (sourceImports.typeOnlyNamedImport) { - const closingBraceToken = util.nullThrows(sourceCode.getFirstTokenBetween(sourceCode.getFirstToken(sourceImports.typeOnlyNamedImport), sourceImports.typeOnlyNamedImport.source, util.isClosingBraceToken), util.NullThrowsReasons.MissingToken('}', sourceImports.typeOnlyNamedImport.type)); - let insertText = fixesNamedSpecifiers.typeNamedSpecifiersText; - const before = sourceCode.getTokenBefore(closingBraceToken); - if (!util.isCommaToken(before) && !util.isOpeningBraceToken(before)) { - insertText = ',' + insertText; - } - // import type { Already, Type1, Type2 } from 'foo' - // ^^^^^^^^^^^^^ insert - const insertTypeNamedSpecifiers = fixer.insertTextBefore(closingBraceToken, insertText); + const insertTypeNamedSpecifiers = insertToNamedImport(fixer, sourceImports.typeOnlyNamedImport, fixesNamedSpecifiers.typeNamedSpecifiersText); if (sourceImports.typeOnlyNamedImport.range[1] <= node.range[0]) { yield insertTypeNamedSpecifiers; } @@ -300,89 +468,6 @@ exports.default = util.createRule({ yield* fixesNamedSpecifiers.removeTypeNamedSpecifiers; yield* fixesRemoveTypeNamespaceSpecifier; yield* afterFixes; - /** - * Returns information for fixing named specifiers. - */ - function getFixesNamedSpecifiers(typeNamedSpecifiers, allNamedSpecifiers) { - if (allNamedSpecifiers.length === 0) { - return { - typeNamedSpecifiersText: '', - removeTypeNamedSpecifiers: [], - }; - } - const typeNamedSpecifiersTexts = []; - const removeTypeNamedSpecifiers = []; - if (typeNamedSpecifiers.length === allNamedSpecifiers.length) { - // e.g. - // import Foo, {Type1, Type2} from 'foo' - // import DefType, {Type1, Type2} from 'foo' - const openingBraceToken = util.nullThrows(sourceCode.getTokenBefore(typeNamedSpecifiers[0], util.isOpeningBraceToken), util.NullThrowsReasons.MissingToken('{', node.type)); - const commaToken = util.nullThrows(sourceCode.getTokenBefore(openingBraceToken, util.isCommaToken), util.NullThrowsReasons.MissingToken(',', node.type)); - const closingBraceToken = util.nullThrows(sourceCode.getFirstTokenBetween(openingBraceToken, node.source, util.isClosingBraceToken), util.NullThrowsReasons.MissingToken('}', node.type)); - // import DefType, {...} from 'foo' - // ^^^^^^^ remove - removeTypeNamedSpecifiers.push(fixer.removeRange([ - commaToken.range[0], - closingBraceToken.range[1], - ])); - typeNamedSpecifiersTexts.push(sourceCode.text.slice(openingBraceToken.range[1], closingBraceToken.range[0])); - } - else { - const typeNamedSpecifierGroups = []; - let group = []; - for (const namedSpecifier of allNamedSpecifiers) { - if (typeNamedSpecifiers.includes(namedSpecifier)) { - group.push(namedSpecifier); - } - else if (group.length) { - typeNamedSpecifierGroups.push(group); - group = []; - } - } - if (group.length) { - typeNamedSpecifierGroups.push(group); - } - for (const namedSpecifiers of typeNamedSpecifierGroups) { - const { removeRange, textRange } = getNamedSpecifierRanges(namedSpecifiers, allNamedSpecifiers); - removeTypeNamedSpecifiers.push(fixer.removeRange(removeRange)); - typeNamedSpecifiersTexts.push(sourceCode.text.slice(...textRange)); - } - } - return { - typeNamedSpecifiersText: typeNamedSpecifiersTexts.join(','), - removeTypeNamedSpecifiers, - }; - } - /** - * Returns ranges for fixing named specifier. - */ - function getNamedSpecifierRanges(namedSpecifierGroup, allNamedSpecifiers) { - const first = namedSpecifierGroup[0]; - const last = namedSpecifierGroup[namedSpecifierGroup.length - 1]; - const removeRange = [first.range[0], last.range[1]]; - const textRange = [...removeRange]; - const before = sourceCode.getTokenBefore(first); - textRange[0] = before.range[1]; - if (util.isCommaToken(before)) { - removeRange[0] = before.range[0]; - } - else { - removeRange[0] = before.range[1]; - } - const isFirst = allNamedSpecifiers[0] === first; - const isLast = allNamedSpecifiers[allNamedSpecifiers.length - 1] === last; - const after = sourceCode.getTokenAfter(last); - textRange[1] = after.range[0]; - if (isFirst || isLast) { - if (util.isCommaToken(after)) { - removeRange[1] = after.range[1]; - } - } - return { - textRange, - removeRange, - }; - } } function* fixToTypeImportByInsertType(fixer, node, isDefaultImport) { // import type Foo from 'foo' @@ -411,14 +496,60 @@ exports.default = util.createRule({ } } } - function fixToValueImport(fixer, node) { + function* fixToValueImportInDecoMeta(fixer, report, sourceImports) { + const { node } = report; + const { defaultSpecifier, namespaceSpecifier, namedSpecifiers, } = classifySpecifier(node); + if (namespaceSpecifier) { + // e.g. + // import type * as types from 'foo' + yield* fixToValueImport(fixer, node); + return; + } + else if (defaultSpecifier) { + if (report.valueSpecifiers.includes(defaultSpecifier) && + namedSpecifiers.length === 0) { + // e.g. + // import type Type from 'foo' + yield* fixToValueImport(fixer, node); + return; + } + } + else { + if (namedSpecifiers.every(specifier => report.valueSpecifiers.includes(specifier))) { + // e.g. + // import type {Type1, Type2} from 'foo' + yield* fixToValueImport(fixer, node); + return; + } + } + const valueNamedSpecifiers = namedSpecifiers.filter(specifier => report.valueSpecifiers.includes(specifier)); + const fixesNamedSpecifiers = getFixesNamedSpecifiers(fixer, node, valueNamedSpecifiers, namedSpecifiers); + const afterFixes = []; + if (valueNamedSpecifiers.length) { + if (sourceImports.valueOnlyNamedImport) { + const insertTypeNamedSpecifiers = insertToNamedImport(fixer, sourceImports.valueOnlyNamedImport, fixesNamedSpecifiers.typeNamedSpecifiersText); + if (sourceImports.valueOnlyNamedImport.range[1] <= node.range[0]) { + yield insertTypeNamedSpecifiers; + } + else { + afterFixes.push(insertTypeNamedSpecifiers); + } + } + else { + yield fixer.insertTextBefore(node, `import {${fixesNamedSpecifiers.typeNamedSpecifiersText}} from ${sourceCode.getText(node.source)};\n`); + } + } + yield* fixesNamedSpecifiers.removeTypeNamedSpecifiers; + yield* afterFixes; + } + function* fixToValueImport(fixer, node) { var _a, _b; // import type Foo from 'foo' // ^^^^ remove const importToken = util.nullThrows(sourceCode.getFirstToken(node, isImportToken), util.NullThrowsReasons.MissingToken('import', node.type)); const typeToken = util.nullThrows(sourceCode.getFirstTokenBetween(importToken, (_b = (_a = node.specifiers[0]) === null || _a === void 0 ? void 0 : _a.local) !== null && _b !== void 0 ? _b : node.source, isTypeToken), util.NullThrowsReasons.MissingToken('type', node.type)); const afterToken = util.nullThrows(sourceCode.getTokenAfter(typeToken, { includeComments: true }), util.NullThrowsReasons.MissingToken('any token', node.type)); - return fixer.removeRange([typeToken.range[0], afterToken.range[0]]); + yield fixer.removeRange([typeToken.range[0], afterToken.range[0]]); } }, }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map index d22b4308df..78dca78376 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js.map @@ -1 +1 @@ -{"version":3,"file":"consistent-type-imports.js","sourceRoot":"","sources":["../../src/rules/consistent-type-imports.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"consistent-type-imports.js","sourceRoot":"","sources":["../../src/rules/consistent-type-imports.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAK+C;AAC/C,8CAAgC;AA0BhC,SAAS,aAAa,CACpB,KAAwC;IAExC,OAAO,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC;AAC5E,CAAC;AAED,SAAS,WAAW,CAClB,KAAwC;IAExC,OAAO,KAAK,CAAC,IAAI,KAAK,oCAAe,CAAC,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM,CAAC;AAC7E,CAAC;AAUD,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,yBAAyB;IAC/B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,KAAK;SACnB;QACD,QAAQ,EAAE;YACR,aAAa,EACX,0EAA0E;YAC5E,uBAAuB,EAAE,gDAAgD;YACzE,kBAAkB,EAAE,8CAA8C;YAClE,qBAAqB,EACnB,6DAA6D;YAC/D,iBAAiB,EACf,2DAA2D;YAC7D,aAAa,EAAE,8CAA8C;YAC7D,uBAAuB,EAAE,4CAA4C;SACtE;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC;qBAC1C;oBACD,uBAAuB,EAAE;wBACvB,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;QACD,OAAO,EAAE,MAAM;KAChB;IAED,cAAc,EAAE;QACd;YACE,MAAM,EAAE,cAAc;YACtB,uBAAuB,EAAE,IAAI;SAC9B;KACF;IAED,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;;QACtB,MAAM,MAAM,SAAG,MAAM,CAAC,MAAM,mCAAI,cAAc,CAAC;QAC/C,MAAM,uBAAuB,GAAG,MAAM,CAAC,uBAAuB,KAAK,KAAK,CAAC;QACzE,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAE3C,MAAM,gBAAgB,GAAqC,EAAE,CAAC;QAE9D,uCACK,CAAC,MAAM,KAAK,cAAc;YAC3B,CAAC,CAAC;gBACE,sBAAsB;gBACtB,iBAAiB,CAAC,IAAgC;;oBAChD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAe,CAAC;oBAC3C,MAAM,aAAa,SACjB,gBAAgB,CAAC,MAAM,CAAC,mCACxB,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG;wBAC1B,MAAM;wBACN,kBAAkB,EAAE,EAAE;wBACtB,mBAAmB,EAAE,IAAI;wBACzB,oBAAoB,EAAE,IAAI;qBAC3B,CAAC,CAAC;oBACL,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;wBAC9B,IACE,CAAC,aAAa,CAAC,mBAAmB;4BAClC,IAAI,CAAC,UAAU,CAAC,KAAK,CACnB,SAAS,CAAC,EAAE,CACV,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,CACpD,EACD;4BACA,aAAa,CAAC,mBAAmB,GAAG,IAAI,CAAC;yBAC1C;qBACF;yBAAM;wBACL,IACE,CAAC,aAAa,CAAC,oBAAoB;4BACnC,IAAI,CAAC,UAAU,CAAC,KAAK,CACnB,SAAS,CAAC,EAAE,CACV,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,CACpD,EACD;4BACA,aAAa,CAAC,oBAAoB,GAAG,IAAI,CAAC;yBAC3C;qBACF;oBAED,MAAM,cAAc,GAA4B,EAAE,CAAC;oBACnD,MAAM,eAAe,GAA4B,EAAE,CAAC;oBACpD,MAAM,gBAAgB,GAA4B,EAAE,CAAC;oBACrD,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;wBACvC,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;wBAC3D,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;4BACpC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;yBAClC;6BAAM;4BACL,MAAM,qBAAqB,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CACrD,GAAG,CAAC,EAAE;;gCACJ;;;;mCAIG;gCACH,IACE,OAAA,GAAG,CAAC,UAAU,CAAC,MAAM,0CAAE,IAAI;oCACzB,mCAAc,CAAC,eAAe;oCAChC,OAAA,GAAG,CAAC,UAAU,CAAC,MAAM,0CAAE,IAAI;wCACzB,mCAAc,CAAC,wBAAwB,EACzC;oCACA,IAAI,GAAG,CAAC,gBAAgB,IAAI,GAAG,CAAC,eAAe,EAAE;wCAC/C,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC;qCACnC;iCACF;gCACD,IAAI,GAAG,CAAC,gBAAgB,EAAE;oCACxB,IAAI,MAAM,GACR,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;oCACxB,IAAI,KAAK,GAAkB,GAAG,CAAC,UAAU,CAAC;oCAC1C,OAAO,MAAM,EAAE;wCACb,QAAQ,MAAM,CAAC,IAAI,EAAE;4CACnB,UAAU;4CACV,yFAAyF;4CACzF,qEAAqE;4CACrE,KAAK,mCAAc,CAAC,WAAW;gDAC7B,OAAO,IAAI,CAAC;4CAEd,KAAK,mCAAc,CAAC,eAAe;gDACjC,kGAAkG;gDAClG,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE;oDACzB,OAAO,KAAK,CAAC;iDACd;gDACD,KAAK,GAAG,MAAM,CAAC;gDACf,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;gDACvB,SAAS;4CACX,aAAa;4CAEb,cAAc;4CAEd,UAAU;4CACV,gGAAgG;4CAChG,sEAAsE;4CACtE,8EAA8E;4CAC9E,KAAK,mCAAc,CAAC,mBAAmB;gDACrC,OAAO,MAAM,CAAC,GAAG,KAAK,KAAK,CAAC;4CAE9B,KAAK,mCAAc,CAAC,gBAAgB;gDAClC,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;oDAC3B,OAAO,KAAK,CAAC;iDACd;gDACD,KAAK,GAAG,MAAM,CAAC;gDACf,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;gDACvB,SAAS;4CACX,aAAa;4CAEb;gDACE,OAAO,KAAK,CAAC;yCAChB;qCACF;iCACF;gCAED,OAAO,GAAG,CAAC,eAAe,CAAC;4BAC7B,CAAC,CACF,CAAC;4BACF,IAAI,qBAAqB,EAAE;gCACzB,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;6BAChC;iCAAM;gCACL,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;6BACjC;yBACF;qBACF;oBAED,IACE,CAAC,IAAI,CAAC,UAAU,KAAK,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC;wBACtD,CAAC,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,EACtD;wBACA,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC;4BACpC,IAAI;4BACJ,cAAc;4BACd,eAAe;4BACf,gBAAgB;yBACjB,CAAC,CAAC;qBACJ;gBACH,CAAC;gBACD,cAAc;oBACZ,KAAK,MAAM,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;wBAC3D,IAAI,aAAa,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;4BACjD,SAAS;yBACV;wBACD,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,kBAAkB,EAAE;4BACrD,IACE,MAAM,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC;gCACnC,MAAM,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EACpC;gCACA,sEAAsE;gCACtE,OAAO,CAAC,MAAM,CAAC;oCACb,IAAI,EAAE,MAAM,CAAC,IAAI;oCACjB,SAAS,EAAE,eAAe;oCAC1B,CAAC,GAAG,CAAC,KAAK;wCACR,KAAK,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;oCACvD,CAAC;iCACF,CAAC,CAAC;6BACJ;iCAAM;gCACL,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC;gCAEvD,wFAAwF;gCACxF,MAAM,WAAW,GAAG,CAAC,YAAY;oCAC/B,CAAC,CAAC,MAAM,CAAC,eAAe;oCACxB,CAAC,CAAC,MAAM,CAAC,cAAc,CACxB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;gCAEhD,MAAM,OAAO,GAAG,CAAC,GAGf,EAAE;oCACF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;wCAC5B,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;wCACnC,IAAI,YAAY,EAAE;4CAChB,OAAO;gDACL,SAAS,EAAE,mBAAmB;gDAC9B,IAAI,EAAE,EAAE,WAAW,EAAE;6CACtB,CAAC;yCACH;6CAAM;4CACL,OAAO;gDACL,SAAS,EAAE,oBAAoB;gDAC/B,IAAI,EAAE,EAAE,WAAW,EAAE;6CACtB,CAAC;yCACH;qCACF;yCAAM;wCACL,MAAM,WAAW,GAAG;4CAClB,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;4CACnC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yCACzB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wCAChB,IAAI,YAAY,EAAE;4CAChB,OAAO;gDACL,SAAS,EAAE,uBAAuB;gDAClC,IAAI,EAAE,EAAE,WAAW,EAAE;6CACtB,CAAC;yCACH;6CAAM;4CACL,OAAO;gDACL,SAAS,EAAE,yBAAyB;gDACpC,IAAI,EAAE,EAAE,WAAW,EAAE;6CACtB,CAAC;yCACH;qCACF;gCACH,CAAC,CAAC,EAAE,CAAC;gCAEL,OAAO,CAAC,MAAM,+BACZ,IAAI,EAAE,MAAM,CAAC,IAAI,IACd,OAAO,KACV,CAAC,GAAG,CAAC,KAAK;wCACR,IAAI,YAAY,EAAE;4CAChB,KAAK,CAAC,CAAC,0BAA0B,CAC/B,KAAK,EACL,MAAM,EACN,aAAa,CACd,CAAC;yCACH;6CAAM;4CACL,KAAK,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;yCACtD;oCACH,CAAC,IACD,CAAC;6BACJ;yBACF;qBACF;gBACH,CAAC;aACF;YACH,CAAC,CAAC;gBACE,yBAAyB;gBACzB,wCAAwC,CACtC,IAAgC;oBAEhC,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,eAAe;wBAC1B,GAAG,CAAC,KAAK;4BACP,OAAO,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;wBACvC,CAAC;qBACF,CAAC,CAAC;gBACL,CAAC;aACF,CAAC,GACH,CAAC,uBAAuB;YACzB,CAAC,CAAC;gBACE,2BAA2B;gBAC3B,YAAY,CAAC,IAA2B;oBACtC,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI;wBACJ,SAAS,EAAE,yBAAyB;qBACrC,CAAC,CAAC;gBACL,CAAC;aACF;YACH,CAAC,CAAC,EAAE,CAAC,EACP;QAEF,SAAS,iBAAiB,CACxB,IAAgC;;YAMhC,MAAM,gBAAgB,GACpB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,mCAAc,CAAC,sBAAsB;gBAC/D,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBACpB,CAAC,CAAC,IAAI,CAAC;YACX,MAAM,kBAAkB,SACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,CAAC,SAAS,EAAkD,EAAE,CAC5D,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,wBAAwB,CAC7D,mCAAI,IAAI,CAAC;YACZ,MAAM,eAAe,GAA+B,IAAI,CAAC,UAAU,CAAC,MAAM,CACxE,CAAC,SAAS,EAAyC,EAAE,CACnD,SAAS,CAAC,IAAI,KAAK,mCAAc,CAAC,eAAe,CACpD,CAAC;YACF,OAAO;gBACL,gBAAgB;gBAChB,kBAAkB;gBAClB,eAAe;aAChB,CAAC;QACJ,CAAC;QAED;;WAEG;QACH,SAAS,uBAAuB,CAC9B,KAAyB,EACzB,IAAgC,EAChC,mBAA+C,EAC/C,kBAA8C;YAK9C,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnC,OAAO;oBACL,uBAAuB,EAAE,EAAE;oBAC3B,yBAAyB,EAAE,EAAE;iBAC9B,CAAC;aACH;YACD,MAAM,wBAAwB,GAAa,EAAE,CAAC;YAC9C,MAAM,yBAAyB,GAAuB,EAAE,CAAC;YACzD,IAAI,mBAAmB,CAAC,MAAM,KAAK,kBAAkB,CAAC,MAAM,EAAE;gBAC5D,OAAO;gBACP,wCAAwC;gBACxC,4CAA4C;gBAC5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CACvC,UAAU,CAAC,cAAc,CACvB,mBAAmB,CAAC,CAAC,CAAC,EACtB,IAAI,CAAC,mBAAmB,CACzB,EACD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CACpD,CAAC;gBACF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAChC,UAAU,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,EAC/D,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CACpD,CAAC;gBACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CACvC,UAAU,CAAC,oBAAoB,CAC7B,iBAAiB,EACjB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,mBAAmB,CACzB,EACD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CACpD,CAAC;gBAEF,mCAAmC;gBACnC,+BAA+B;gBAC/B,yBAAyB,CAAC,IAAI,CAC5B,KAAK,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACrE,CAAC;gBAEF,wBAAwB,CAAC,IAAI,CAC3B,UAAU,CAAC,IAAI,CAAC,KAAK,CACnB,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAC1B,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAC3B,CACF,CAAC;aACH;iBAAM;gBACL,MAAM,wBAAwB,GAAiC,EAAE,CAAC;gBAClE,IAAI,KAAK,GAA+B,EAAE,CAAC;gBAC3C,KAAK,MAAM,cAAc,IAAI,kBAAkB,EAAE;oBAC/C,IAAI,mBAAmB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;wBAChD,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;qBAC5B;yBAAM,IAAI,KAAK,CAAC,MAAM,EAAE;wBACvB,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACrC,KAAK,GAAG,EAAE,CAAC;qBACZ;iBACF;gBACD,IAAI,KAAK,CAAC,MAAM,EAAE;oBAChB,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACtC;gBACD,KAAK,MAAM,eAAe,IAAI,wBAAwB,EAAE;oBACtD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,uBAAuB,CACxD,eAAe,EACf,kBAAkB,CACnB,CAAC;oBACF,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;oBAE/D,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;iBACpE;aACF;YACD,OAAO;gBACL,uBAAuB,EAAE,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC3D,yBAAyB;aAC1B,CAAC;QACJ,CAAC;QAED;;WAEG;QACH,SAAS,uBAAuB,CAC9B,mBAA+C,EAC/C,kBAA8C;YAK9C,MAAM,KAAK,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,IAAI,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjE,MAAM,WAAW,GAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,SAAS,GAAmB,CAAC,GAAG,WAAW,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,KAAK,CAAE,CAAC;YACjD,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;gBAC7B,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAClC;iBAAM;gBACL,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAClC;YAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;YAChD,MAAM,MAAM,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;YAC1E,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC;YAC9C,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,OAAO,IAAI,MAAM,EAAE;gBACrB,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;oBAC5B,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;iBACjC;aACF;YAED,OAAO;gBACL,SAAS;gBACT,WAAW;aACZ,CAAC;QACJ,CAAC;QAED;;;;;WAKG;QACH,SAAS,mBAAmB,CAC1B,KAAyB,EACzB,MAAkC,EAClC,UAAkB;YAElB,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CACvC,UAAU,CAAC,oBAAoB,CAC7B,UAAU,CAAC,aAAa,CAAC,MAAM,CAAE,EACjC,MAAM,CAAC,MAAM,EACb,IAAI,CAAC,mBAAmB,CACzB,EACD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CACtD,CAAC;YACF,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,iBAAiB,CAAE,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE;gBACnE,UAAU,GAAG,GAAG,GAAG,UAAU,CAAC;aAC/B;YACD,OAAO,KAAK,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;QAC/D,CAAC;QAED,QAAQ,CAAC,CAAC,eAAe,CACvB,KAAyB,EACzB,MAAyB,EACzB,aAA4B;YAE5B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAExB,MAAM,EACJ,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAChB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAE5B,IAAI,kBAAkB,IAAI,CAAC,gBAAgB,EAAE;gBAC3C,OAAO;gBACP,+BAA+B;gBAC/B,KAAK,CAAC,CAAC,2BAA2B,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBACvD,OAAO;aACR;iBAAM,IAAI,gBAAgB,EAAE;gBAC3B,IACE,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBAChD,eAAe,CAAC,MAAM,KAAK,CAAC;oBAC5B,CAAC,kBAAkB,EACnB;oBACA,OAAO;oBACP,yBAAyB;oBACzB,KAAK,CAAC,CAAC,2BAA2B,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;oBACtD,OAAO;iBACR;aACF;iBAAM;gBACL,IACE,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAChC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC1C;oBACD,CAAC,kBAAkB,EACnB;oBACA,OAAO;oBACP,mCAAmC;oBACnC,KAAK,CAAC,CAAC,2BAA2B,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oBACvD,OAAO;iBACR;aACF;YAED,MAAM,mBAAmB,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAC7D,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC1C,CAAC;YAEF,MAAM,oBAAoB,GAAG,uBAAuB,CAClD,KAAK,EACL,IAAI,EACJ,mBAAmB,EACnB,eAAe,CAChB,CAAC;YACF,MAAM,UAAU,GAAuB,EAAE,CAAC;YAC1C,IAAI,mBAAmB,CAAC,MAAM,EAAE;gBAC9B,IAAI,aAAa,CAAC,mBAAmB,EAAE;oBACrC,MAAM,yBAAyB,GAAG,mBAAmB,CACnD,KAAK,EACL,aAAa,CAAC,mBAAmB,EACjC,oBAAoB,CAAC,uBAAuB,CAC7C,CAAC;oBACF,IAAI,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;wBAC/D,MAAM,yBAAyB,CAAC;qBACjC;yBAAM;wBACL,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;qBAC5C;iBACF;qBAAM;oBACL,MAAM,KAAK,CAAC,gBAAgB,CAC1B,IAAI,EACJ,gBACE,oBAAoB,CAAC,uBACvB,UAAU,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAC/C,CAAC;iBACH;aACF;YAED,MAAM,iCAAiC,GAAuB,EAAE,CAAC;YACjE,IACE,kBAAkB;gBAClB,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAClD;gBACA,OAAO;gBACP,mCAAmC;gBACnC,uCAAuC;gBACvC,uCAAuC;gBACvC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAChC,UAAU,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,YAAY,CAAC,EAChE,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CACpD,CAAC;gBAEF,iCAAiC;gBACjC,6BAA6B;gBAC7B,iCAAiC,CAAC,IAAI,CACpC,KAAK,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACtE,CAAC;gBAEF,iCAAiC;gBACjC,wCAAwC;gBACxC,MAAM,KAAK,CAAC,gBAAgB,CAC1B,IAAI,EACJ,eAAe,UAAU,CAAC,OAAO,CAC/B,kBAAkB,CACnB,SAAS,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAC/C,CAAC;aACH;YACD,IACE,gBAAgB;gBAChB,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAChD;gBACA,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;oBAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CACjC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,EAC7C,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CACzD,CAAC;oBACF,8BAA8B;oBAC9B,qBAAqB;oBACrB,MAAM,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;iBACnD;qBAAM;oBACL,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAChC,UAAU,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,EAC7D,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAChE,CAAC;oBACF,iCAAiC;oBACjC,oBAAoB;oBACpB,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI;yBAChC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;yBACrD,IAAI,EAAE,CAAC;oBACV,MAAM,KAAK,CAAC,gBAAgB,CAC1B,IAAI,EACJ,eAAe,WAAW,SAAS,UAAU,CAAC,OAAO,CACnD,IAAI,CAAC,MAAM,CACZ,KAAK,CACP,CAAC;oBACF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAChC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAC/D,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAC5D,CAAC;oBACF,iCAAiC;oBACjC,wBAAwB;oBACxB,MAAM,KAAK,CAAC,WAAW,CAAC;wBACtB,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;wBACzB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;qBACpB,CAAC,CAAC;iBACJ;aACF;YAED,KAAK,CAAC,CAAC,oBAAoB,CAAC,yBAAyB,CAAC;YACtD,KAAK,CAAC,CAAC,iCAAiC,CAAC;YAEzC,KAAK,CAAC,CAAC,UAAU,CAAC;QACpB,CAAC;QAED,QAAQ,CAAC,CAAC,2BAA2B,CACnC,KAAyB,EACzB,IAAgC,EAChC,eAAwB;YAExB,6BAA6B;YAC7B,qBAAqB;YACrB,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CACjC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,EAC7C,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CACzD,CAAC;YACF,MAAM,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAElD,IAAI,eAAe,EAAE;gBACnB,qBAAqB;gBACrB,MAAM,iBAAiB,GAAG,UAAU,CAAC,oBAAoB,CACvD,WAAW,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,mBAAmB,CACzB,CAAC;gBACF,IAAI,iBAAiB,EAAE;oBACrB,8CAA8C;oBAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAChC,UAAU,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,YAAY,CAAC,EAC/D,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CACpD,CAAC;oBACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CACvC,UAAU,CAAC,oBAAoB,CAC7B,iBAAiB,EACjB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,mBAAmB,CACzB,EACD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CACpD,CAAC;oBAEF,iCAAiC;oBACjC,6BAA6B;oBAC7B,MAAM,KAAK,CAAC,WAAW,CAAC;wBACtB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;wBACnB,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;qBAC3B,CAAC,CAAC;oBACH,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAC1C,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EACnB,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAC3B,CAAC;oBACF,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC9B,6BAA6B;wBAC7B,4CAA4C;wBAC5C,MAAM,KAAK,CAAC,eAAe,CACzB,IAAI,EACJ,gBAAgB,cAAc,SAAS,UAAU,CAAC,OAAO,CACvD,IAAI,CAAC,MAAM,CACZ,GAAG,CACL,CAAC;qBACH;iBACF;aACF;QACH,CAAC;QAED,QAAQ,CAAC,CAAC,0BAA0B,CAClC,KAAyB,EACzB,MAAyB,EACzB,aAA4B;YAE5B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAExB,MAAM,EACJ,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAChB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAE5B,IAAI,kBAAkB,EAAE;gBACtB,OAAO;gBACP,oCAAoC;gBACpC,KAAK,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACrC,OAAO;aACR;iBAAM,IAAI,gBAAgB,EAAE;gBAC3B,IACE,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBACjD,eAAe,CAAC,MAAM,KAAK,CAAC,EAC5B;oBACA,OAAO;oBACP,8BAA8B;oBAC9B,KAAK,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACrC,OAAO;iBACR;aACF;iBAAM;gBACL,IACE,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAChC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC3C,EACD;oBACA,OAAO;oBACP,wCAAwC;oBACxC,KAAK,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACrC,OAAO;iBACR;aACF;YAED,MAAM,oBAAoB,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAC9D,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC3C,CAAC;YAEF,MAAM,oBAAoB,GAAG,uBAAuB,CAClD,KAAK,EACL,IAAI,EACJ,oBAAoB,EACpB,eAAe,CAChB,CAAC;YACF,MAAM,UAAU,GAAuB,EAAE,CAAC;YAC1C,IAAI,oBAAoB,CAAC,MAAM,EAAE;gBAC/B,IAAI,aAAa,CAAC,oBAAoB,EAAE;oBACtC,MAAM,yBAAyB,GAAG,mBAAmB,CACnD,KAAK,EACL,aAAa,CAAC,oBAAoB,EAClC,oBAAoB,CAAC,uBAAuB,CAC7C,CAAC;oBACF,IAAI,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;wBAChE,MAAM,yBAAyB,CAAC;qBACjC;yBAAM;wBACL,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;qBAC5C;iBACF;qBAAM;oBACL,MAAM,KAAK,CAAC,gBAAgB,CAC1B,IAAI,EACJ,WACE,oBAAoB,CAAC,uBACvB,UAAU,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAC/C,CAAC;iBACH;aACF;YAED,KAAK,CAAC,CAAC,oBAAoB,CAAC,yBAAyB,CAAC;YAEtD,KAAK,CAAC,CAAC,UAAU,CAAC;QACpB,CAAC;QAED,QAAQ,CAAC,CAAC,gBAAgB,CACxB,KAAyB,EACzB,IAAgC;;YAEhC,6BAA6B;YAC7B,qBAAqB;YACrB,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CACjC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,EAC7C,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CACzD,CAAC;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAC/B,UAAU,CAAC,oBAAoB,CAC7B,WAAW,cACX,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,0CAAE,KAAK,mCAAI,IAAI,CAAC,MAAM,EACxC,WAAW,CACZ,EACD,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CACvD,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAChC,UAAU,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAC9D,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAC5D,CAAC;YACF,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js index 7adef5e941..44db3efaf9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js @@ -83,6 +83,8 @@ const no_unused_vars_experimental_1 = __importDefault(require("./no-unused-vars- const no_use_before_define_1 = __importDefault(require("./no-use-before-define")); const no_useless_constructor_1 = __importDefault(require("./no-useless-constructor")); const no_var_requires_1 = __importDefault(require("./no-var-requires")); +const non_nullable_type_assertion_style_1 = __importDefault(require("./non-nullable-type-assertion-style")); +const object_curly_spacing_1 = __importDefault(require("./object-curly-spacing")); const prefer_as_const_1 = __importDefault(require("./prefer-as-const")); const prefer_enum_initializers_1 = __importDefault(require("./prefer-enum-initializers")); const prefer_for_of_1 = __importDefault(require("./prefer-for-of")); @@ -106,6 +108,7 @@ const restrict_plus_operands_1 = __importDefault(require("./restrict-plus-operan const restrict_template_expressions_1 = __importDefault(require("./restrict-template-expressions")); const return_await_1 = __importDefault(require("./return-await")); const semi_1 = __importDefault(require("./semi")); +const sort_type_union_intersection_members_1 = __importDefault(require("./sort-type-union-intersection-members")); const space_before_function_paren_1 = __importDefault(require("./space-before-function-paren")); const space_infix_ops_1 = __importDefault(require("./space-infix-ops")); const strict_boolean_expressions_1 = __importDefault(require("./strict-boolean-expressions")); @@ -196,6 +199,8 @@ exports.default = { 'no-use-before-define': no_use_before_define_1.default, 'no-useless-constructor': no_useless_constructor_1.default, 'no-var-requires': no_var_requires_1.default, + 'non-nullable-type-assertion-style': non_nullable_type_assertion_style_1.default, + 'object-curly-spacing': object_curly_spacing_1.default, 'prefer-as-const': prefer_as_const_1.default, 'prefer-enum-initializers': prefer_enum_initializers_1.default, 'prefer-for-of': prefer_for_of_1.default, @@ -219,6 +224,7 @@ exports.default = { 'restrict-template-expressions': restrict_template_expressions_1.default, 'return-await': return_await_1.default, semi: semi_1.default, + 'sort-type-union-intersection-members': sort_type_union_intersection_members_1.default, 'space-before-function-paren': space_before_function_paren_1.default, 'space-infix-ops': space_infix_ops_1.default, 'strict-boolean-expressions': strict_boolean_expressions_1.default, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map index 8e95ad5d0b..3ddce3a5ed 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js index 51a59985f8..1c5911ee32 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js @@ -71,7 +71,11 @@ exports.default = util.createRule({ return params; } function getMethodReturnType(node) { - return sourceCode.getText(node.returnType.typeAnnotation); + return node.returnType == null + ? // if the method has no return type, it implicitly has an `any` return type + // we just make it explicit here so we can do the fix + 'any' + : sourceCode.getText(node.returnType.typeAnnotation); } function getDelimiter(node) { const lastToken = sourceCode.getLastToken(node); @@ -124,11 +128,13 @@ exports.default = util.createRule({ methodNode, ...duplicatedKeyMethodNodes, ].sort((a, b) => (a.range[0] < b.range[0] ? -1 : 1)); - const typeString = methodNodes.reduce((str, node, idx, nodes) => { + const typeString = methodNodes + .map(node => { const params = getMethodParams(node); const returnType = getMethodReturnType(node); - return `${str}(${params} => ${returnType})${idx !== nodes.length - 1 ? ' & ' : ''}`; - }, ''); + return `(${params} => ${returnType})`; + }) + .join(' & '); const key = getMethodKey(methodNode); const delimiter = getDelimiter(methodNode); yield fixer.replaceText(methodNode, `${key}: ${typeString}${delimiter}`); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map index 7c6c6b5b73..264473d272 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map @@ -1 +1 @@ -{"version":3,"file":"method-signature-style.js","sourceRoot":"","sources":["../../src/rules/method-signature-style.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"method-signature-style.js","sourceRoot":"","sources":["../../src/rules/method-signature-style.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js index fe1ad34a4f..ea6f2eb0a3 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js @@ -52,8 +52,8 @@ var MetaSelectors; MetaSelectors[MetaSelectors["variableLike"] = 7] = "variableLike"; MetaSelectors[MetaSelectors["memberLike"] = 4088] = "memberLike"; MetaSelectors[MetaSelectors["typeLike"] = 192512] = "typeLike"; - MetaSelectors[MetaSelectors["method"] = 2240] = "method"; - MetaSelectors[MetaSelectors["property"] = 1792] = "property"; + MetaSelectors[MetaSelectors["method"] = 448] = "method"; + MetaSelectors[MetaSelectors["property"] = 3584] = "property"; })(MetaSelectors || (MetaSelectors = {})); exports.MetaSelectors = MetaSelectors; var Modifiers; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js.map index e9c2a09868..9a55fe7b72 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js.map @@ -1 +1 @@ -{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/rules/naming-convention-utils/enums.ts"],"names":[],"mappings":";;;AAAA,IAAK,iBAOJ;AAPD,WAAK,iBAAiB;IACpB,mEAAa,CAAA;IACb,+EAAe,CAAA;IACf,qEAAU,CAAA;IACV,iFAAgB,CAAA;IAChB,qEAAU,CAAA;IACV,qEAAU,CAAA;AACZ,CAAC,EAPI,iBAAiB,KAAjB,iBAAiB,QAOrB;AAqHC,8CAAiB;AAlHnB,IAAK,iBASJ;AATD,WAAK,iBAAiB;IACpB,6DAAU,CAAA;IACV,2DAAK,CAAA;IACL,+DAAO,CAAA;IAEP,iEAAiE;IACjE,2EAAa,CAAA;IACb,uEAAW,CAAA;IACX,uFAAmB,CAAA;AACrB,CAAC,EATI,iBAAiB,KAAjB,iBAAiB,QASrB;AA+GC,8CAAiB;AA5GnB,IAAK,SAuBJ;AAvBD,WAAK,SAAS;IACZ,eAAe;IACf,iDAAiB,CAAA;IACjB,iDAAiB,CAAA;IACjB,mDAAkB,CAAA;IAElB,aAAa;IACb,mEAA0B,CAAA;IAC1B,kDAAiB,CAAA;IACjB,sDAAmB,CAAA;IACnB,wDAAoB,CAAA;IACpB,yEAA4B,CAAA;IAC5B,uDAAmB,CAAA;IACnB,6DAAsB,CAAA;IACtB,8EAA+B,CAAA;IAC/B,4DAAsB,CAAA;IAEtB,WAAW;IACX,8CAAe,CAAA;IACf,sDAAmB,CAAA;IACnB,uDAAmB,CAAA;IACnB,6CAAc,CAAA;IACd,gEAAuB,CAAA;AACzB,CAAC,EAvBI,SAAS,KAAT,SAAS,QAuBb;AAiFC,8BAAS;AA9EX,IAAK,aA8BJ;AA9BD,WAAK,aAAa;IAChB,wDAAY,CAAA;IACZ,iEAGqB,CAAA;IACrB,gEASoB,CAAA;IACpB,8DAKyB,CAAA;IACzB,wDAGwB,CAAA;IACxB,4DAGsB,CAAA;AACxB,CAAC,EA9BI,aAAa,KAAb,aAAa,QA8BjB;AA0CC,sCAAa;AAtCf,IAAK,SAwBJ;AAxBD,WAAK,SAAS;IACZ,iBAAiB;IACjB,2CAAc,CAAA;IACd,mBAAmB;IACnB,iDAAiB,CAAA;IACjB,iBAAiB;IACjB,6CAAe,CAAA;IACf,uBAAuB;IACvB,6CAAe,CAAA;IACf,oDAAkB,CAAA;IAClB,gDAAgB,CAAA;IAChB,kDAAiB,CAAA;IACjB,wBAAwB;IACxB,2DAAqB,CAAA;IACrB,4CAA4C;IAC5C,+CAAe,CAAA;IACf,2BAA2B;IAC3B,mDAAiB,CAAA;IACjB,yBAAyB;IACzB,gDAAgB,CAAA;IAChB,kCAAkC;IAClC,gEAAwB,CAAA;IAExB,6EAA6E;AAC/E,CAAC,EAxBI,SAAS,KAAT,SAAS,QAwBb;AAgBC,8BAAS;AAbX,IAAK,aAMJ;AAND,WAAK,aAAa;IAChB,0DAAiB,CAAA;IACjB,wDAAgB,CAAA;IAChB,yDAAgB,CAAA;IAChB,6DAAkB,CAAA;IAClB,uDAAe,CAAA;AACjB,CAAC,EANI,aAAa,KAAb,aAAa,QAMjB;AAaC,sCAAa"} \ No newline at end of file +{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/rules/naming-convention-utils/enums.ts"],"names":[],"mappings":";;;AAAA,IAAK,iBAOJ;AAPD,WAAK,iBAAiB;IACpB,mEAAa,CAAA;IACb,+EAAe,CAAA;IACf,qEAAU,CAAA;IACV,iFAAgB,CAAA;IAChB,qEAAU,CAAA;IACV,qEAAU,CAAA;AACZ,CAAC,EAPI,iBAAiB,KAAjB,iBAAiB,QAOrB;AAqHC,8CAAiB;AAlHnB,IAAK,iBASJ;AATD,WAAK,iBAAiB;IACpB,6DAAU,CAAA;IACV,2DAAK,CAAA;IACL,+DAAO,CAAA;IAEP,iEAAiE;IACjE,2EAAa,CAAA;IACb,uEAAW,CAAA;IACX,uFAAmB,CAAA;AACrB,CAAC,EATI,iBAAiB,KAAjB,iBAAiB,QASrB;AA+GC,8CAAiB;AA5GnB,IAAK,SAuBJ;AAvBD,WAAK,SAAS;IACZ,eAAe;IACf,iDAAiB,CAAA;IACjB,iDAAiB,CAAA;IACjB,mDAAkB,CAAA;IAElB,aAAa;IACb,mEAA0B,CAAA;IAC1B,kDAAiB,CAAA;IACjB,sDAAmB,CAAA;IACnB,wDAAoB,CAAA;IACpB,yEAA4B,CAAA;IAC5B,uDAAmB,CAAA;IACnB,6DAAsB,CAAA;IACtB,8EAA+B,CAAA;IAC/B,4DAAsB,CAAA;IAEtB,WAAW;IACX,8CAAe,CAAA;IACf,sDAAmB,CAAA;IACnB,uDAAmB,CAAA;IACnB,6CAAc,CAAA;IACd,gEAAuB,CAAA;AACzB,CAAC,EAvBI,SAAS,KAAT,SAAS,QAuBb;AAiFC,8BAAS;AA9EX,IAAK,aA8BJ;AA9BD,WAAK,aAAa;IAChB,wDAAY,CAAA;IACZ,iEAGqB,CAAA;IACrB,gEASoB,CAAA;IACpB,8DAKyB,CAAA;IACzB,uDAGsB,CAAA;IACtB,4DAGwB,CAAA;AAC1B,CAAC,EA9BI,aAAa,KAAb,aAAa,QA8BjB;AA0CC,sCAAa;AAtCf,IAAK,SAwBJ;AAxBD,WAAK,SAAS;IACZ,iBAAiB;IACjB,2CAAc,CAAA;IACd,mBAAmB;IACnB,iDAAiB,CAAA;IACjB,iBAAiB;IACjB,6CAAe,CAAA;IACf,uBAAuB;IACvB,6CAAe,CAAA;IACf,oDAAkB,CAAA;IAClB,gDAAgB,CAAA;IAChB,kDAAiB,CAAA;IACjB,wBAAwB;IACxB,2DAAqB,CAAA;IACrB,4CAA4C;IAC5C,+CAAe,CAAA;IACf,2BAA2B;IAC3B,mDAAiB,CAAA;IACjB,yBAAyB;IACzB,gDAAgB,CAAA;IAChB,kCAAkC;IAClC,gEAAwB,CAAA;IAExB,6EAA6E;AAC/E,CAAC,EAxBI,SAAS,KAAT,SAAS,QAwBb;AAgBC,8BAAS;AAbX,IAAK,aAMJ;AAND,WAAK,aAAa;IAChB,0DAAiB,CAAA;IACjB,wDAAgB,CAAA;IAChB,yDAAgB,CAAA;IAChB,6DAAkB,CAAA;IAClB,uDAAe,CAAA;AACjB,CAAC,EANI,aAAa,KAAb,aAAa,QAMjB;AAaC,sCAAa"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js index b7b659a751..0371db59fa 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js @@ -1,6 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.isMetaSelector = exports.selectorTypeToMessageString = void 0; +exports.isMethodOrPropertySelector = exports.isMetaSelector = exports.selectorTypeToMessageString = void 0; const enums_1 = require("./enums"); function selectorTypeToMessageString(selectorType) { const notCamelCase = selectorType.replace(/([A-Z])/g, ' $1'); @@ -11,4 +11,8 @@ function isMetaSelector(selector) { return selector in enums_1.MetaSelectors; } exports.isMetaSelector = isMetaSelector; +function isMethodOrPropertySelector(selector) { + return (selector === enums_1.MetaSelectors.method || selector === enums_1.MetaSelectors.property); +} +exports.isMethodOrPropertySelector = isMethodOrPropertySelector; //# sourceMappingURL=shared.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js.map index e842c62fcf..a8412be4fb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js.map @@ -1 +1 @@ -{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/rules/naming-convention-utils/shared.ts"],"names":[],"mappings":";;;AAAA,mCAMiB;AAEjB,SAAS,2BAA2B,CAAC,YAA6B;IAChE,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC7D,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAQQ,kEAA2B;AANpC,SAAS,cAAc,CACrB,QAAsE;IAEtE,OAAO,QAAQ,IAAI,qBAAa,CAAC;AACnC,CAAC;AAEqC,wCAAc"} \ No newline at end of file +{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/rules/naming-convention-utils/shared.ts"],"names":[],"mappings":";;;AAAA,mCAMiB;AAEjB,SAAS,2BAA2B,CAAC,YAA6B;IAChE,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC7D,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAiBC,kEAA2B;AAf7B,SAAS,cAAc,CACrB,QAAsE;IAEtE,OAAO,QAAQ,IAAI,qBAAa,CAAC;AACnC,CAAC;AAYC,wCAAc;AAVhB,SAAS,0BAA0B,CACjC,QAAsE;IAEtE,OAAO,CACL,QAAQ,KAAK,qBAAa,CAAC,MAAM,IAAI,QAAQ,KAAK,qBAAa,CAAC,QAAQ,CACzE,CAAC;AACJ,CAAC;AAKC,gEAA0B"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js index f74236e56b..67b5ba55da 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js @@ -47,6 +47,15 @@ function createValidator(type, context, allConfigs) { if (!aIsMeta && bIsMeta) { return -1; } + const aIsMethodOrProperty = shared_1.isMethodOrPropertySelector(a.selector); + const bIsMethodOrProperty = shared_1.isMethodOrPropertySelector(b.selector); + // for backward compatibility, method and property have higher precedence than other meta selectors + if (aIsMethodOrProperty && !bIsMethodOrProperty) { + return -1; + } + if (!aIsMethodOrProperty && bIsMethodOrProperty) { + return 1; + } // both aren't meta selectors // sort descending - the meta selectors are "least important" return b.selector - a.selector; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js.map index 94648ec7d7..88e2ac35c9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js.map @@ -1 +1 @@ -{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../src/rules/naming-convention-utils/validator.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../src/rules/naming-convention-utils/validator.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js index 713be4ddd4..170f3ba357 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js @@ -111,13 +111,7 @@ exports.default = util.createRule({ return rules.ConditionalExpression(node); }, // DoWhileStatement - 'ForInStatement, ForOfStatement'(node) { - if (util.isTypeAssertion(node.right)) { - // makes the rule skip checking of the right - return rules['ForInStatement, ForOfStatement'](Object.assign(Object.assign({}, node), { type: experimental_utils_1.AST_NODE_TYPES.ForOfStatement, right: Object.assign(Object.assign({}, node.right), { type: experimental_utils_1.AST_NODE_TYPES.SequenceExpression }) })); - } - return rules['ForInStatement, ForOfStatement'](node); - }, + // ForIn and ForOf are guarded by eslint version ForStatement(node) { // make the rule skip the piece by removing it entirely if (node.init && util.isTypeAssertion(node.init)) { @@ -176,6 +170,31 @@ exports.default = util.createRule({ } }, }; + if (rules.ForInStatement && rules.ForOfStatement) { + overrides.ForInStatement = function (node) { + if (util.isTypeAssertion(node.right)) { + // makes the rule skip checking of the right + return rules.ForInStatement(Object.assign(Object.assign({}, node), { type: experimental_utils_1.AST_NODE_TYPES.ForInStatement, right: Object.assign(Object.assign({}, node.right), { type: experimental_utils_1.AST_NODE_TYPES.SequenceExpression }) })); + } + return rules.ForInStatement(node); + }; + overrides.ForOfStatement = function (node) { + if (util.isTypeAssertion(node.right)) { + // makes the rule skip checking of the right + return rules.ForOfStatement(Object.assign(Object.assign({}, node), { type: experimental_utils_1.AST_NODE_TYPES.ForOfStatement, right: Object.assign(Object.assign({}, node.right), { type: experimental_utils_1.AST_NODE_TYPES.SequenceExpression }) })); + } + return rules.ForOfStatement(node); + }; + } + else { + overrides['ForInStatement, ForOfStatement'] = function (node) { + if (util.isTypeAssertion(node.right)) { + // makes the rule skip checking of the right + return rules['ForInStatement, ForOfStatement'](Object.assign(Object.assign({}, node), { type: experimental_utils_1.AST_NODE_TYPES.ForOfStatement, right: Object.assign(Object.assign({}, node.right), { type: experimental_utils_1.AST_NODE_TYPES.SequenceExpression }) })); + } + return rules['ForInStatement, ForOfStatement'](node); + }; + } return Object.assign({}, rules, overrides); }, }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map index b3b7d7eace..76bd3dbc4d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map @@ -1 +1 @@ -{"version":3,"file":"no-extra-parens.js","sourceRoot":"","sources":["../../src/rules/no-extra-parens.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-extra-parens.js","sourceRoot":"","sources":["../../src/rules/no-extra-parens.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js index ccea8a9530..744ab80463 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js @@ -21,28 +21,6 @@ var __importStar = (this && this.__importStar) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const util = __importStar(require("../util")); -// https://github.com/lodash/lodash/blob/86a852fe763935bb64c12589df5391fd7d3bb14d/escapeRegExp.js -const reRegExpChar = /[\\^$.*+?()[\]{}|]/g; -const reHasRegExpChar = RegExp(reRegExpChar.source); -function escapeRegExp(str) { - return str && reHasRegExpChar.test(str) - ? str.replace(reRegExpChar, '\\$&') - : str || ''; -} -function getNameLocationInGlobalDirectiveComment(sourceCode, comment, name) { - const namePattern = new RegExp(`[\\s,]${escapeRegExp(name)}(?:$|[\\s,:])`, 'gu'); - // To ignore the first text "global". - namePattern.lastIndex = comment.value.indexOf('global') + 6; - // Search a given variable name. - const match = namePattern.exec(comment.value); - // Convert the index to loc. - const start = sourceCode.getLocFromIndex(comment.range[0] + '/*'.length + (match ? match.index + 1 : 0)); - const end = { - line: start.line, - column: start.column + (match ? name.length : 1), - }; - return { start, end }; -} exports.default = util.createRule({ name: 'no-redeclare', meta: { @@ -103,7 +81,7 @@ exports.default = util.createRule({ yield { type: 'comment', node: comment, - loc: getNameLocationInGlobalDirectiveComment(sourceCode, comment, variable.name), + loc: util.getNameLocationInGlobalDirectiveComment(sourceCode, comment, variable.name), }; } } diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map index 38aac7aa9a..bc5b25d688 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js.map @@ -1 +1 @@ -{"version":3,"file":"no-redeclare.js","sourceRoot":"","sources":["../../src/rules/no-redeclare.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-redeclare.js","sourceRoot":"","sources":["../../src/rules/no-redeclare.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js index f6eec8f466..cf88732e2c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js @@ -21,7 +21,6 @@ var __importStar = (this && this.__importStar) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); const scope_manager_1 = require("@typescript-eslint/scope-manager"); -const ast_utils_1 = require("eslint/lib/rules/utils/ast-utils"); const util = __importStar(require("../util")); exports.default = util.createRule({ name: 'no-unused-vars', @@ -187,9 +186,15 @@ exports.default = util.createRule({ continue; } } - if (!hasRestSpreadSibling(variable)) { - unusedVariablesReturn.push(variable); + if (hasRestSpreadSibling(variable)) { + continue; } + // in case another rule has run and used the collectUnusedVariables, + // we want to ensure our selectors that marked variables as used are respected + if (variable.eslintUsed) { + continue; + } + unusedVariablesReturn.push(variable); } return unusedVariablesReturn; } @@ -292,7 +297,7 @@ exports.default = util.createRule({ const directiveComment = unusedVar.eslintExplicitGlobalComments[0]; context.report({ node: programNode, - loc: ast_utils_1.getNameLocationInGlobalDirectiveComment(sourceCode, directiveComment, unusedVar.name), + loc: util.getNameLocationInGlobalDirectiveComment(sourceCode, directiveComment, unusedVar.name), messageId: 'unusedVar', data: getDefinedMessageData(unusedVar), }); diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map index 4ccec9c969..43bfd18de1 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js.map @@ -1 +1 @@ -{"version":3,"file":"no-unused-vars.js","sourceRoot":"","sources":["../../src/rules/no-unused-vars.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"no-unused-vars.js","sourceRoot":"","sources":["../../src/rules/no-unused-vars.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js new file mode 100644 index 0000000000..03aa2dd76a --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js @@ -0,0 +1,101 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const tsutils = __importStar(require("tsutils")); +const ts = __importStar(require("typescript")); +const util = __importStar(require("../util")); +exports.default = util.createRule({ + name: 'non-nullable-type-assertion-style', + meta: { + docs: { + category: 'Best Practices', + description: 'Prefers a non-null assertion over explicit type cast when possible', + recommended: false, + requiresTypeChecking: true, + suggestion: true, + }, + fixable: 'code', + messages: { + preferNonNullAssertion: 'Use a ! assertion to more succintly remove null and undefined from the type.', + }, + schema: [], + type: 'suggestion', + }, + defaultOptions: [], + create(context) { + const parserServices = util.getParserServices(context); + const checker = parserServices.program.getTypeChecker(); + const sourceCode = context.getSourceCode(); + const getTypesIfNotLoose = (node) => { + const type = checker.getTypeAtLocation(parserServices.esTreeNodeToTSNodeMap.get(node)); + if (tsutils.isTypeFlagSet(type, ts.TypeFlags.Any | ts.TypeFlags.Unknown)) { + return undefined; + } + return tsutils.unionTypeParts(type); + }; + const sameTypeWithoutNullish = (assertedTypes, originalTypes) => { + const nonNullishOriginalTypes = originalTypes.filter(type => type.flags !== ts.TypeFlags.Null && + type.flags !== ts.TypeFlags.Undefined); + for (const assertedType of assertedTypes) { + if (!nonNullishOriginalTypes.includes(assertedType)) { + return false; + } + } + for (const originalType of nonNullishOriginalTypes) { + if (!assertedTypes.includes(originalType)) { + return false; + } + } + return true; + }; + const isConstAssertion = (node) => { + return (node.typeAnnotation.type === experimental_utils_1.AST_NODE_TYPES.TSTypeReference && + node.typeAnnotation.typeName.type === experimental_utils_1.AST_NODE_TYPES.Identifier && + node.typeAnnotation.typeName.name === 'const'); + }; + return { + 'TSAsExpression, TSTypeAssertion'(node) { + if (isConstAssertion(node)) { + return; + } + const originalTypes = getTypesIfNotLoose(node.expression); + if (!originalTypes) { + return; + } + const assertedTypes = getTypesIfNotLoose(node.typeAnnotation); + if (!assertedTypes) { + return; + } + if (sameTypeWithoutNullish(assertedTypes, originalTypes)) { + context.report({ + fix(fixer) { + return fixer.replaceText(node, `${sourceCode.getText(node.expression)}!`); + }, + messageId: 'preferNonNullAssertion', + node, + }); + } + }, + }; + }, +}); +//# sourceMappingURL=non-nullable-type-assertion-style.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map new file mode 100644 index 0000000000..ffa72ba3c5 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js.map @@ -0,0 +1 @@ +{"version":3,"file":"non-nullable-type-assertion-style.js","sourceRoot":"","sources":["../../src/rules/non-nullable-type-assertion-style.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js new file mode 100644 index 0000000000..b1b3ba252b --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js @@ -0,0 +1,202 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const object_curly_spacing_1 = __importDefault(require("eslint/lib/rules/object-curly-spacing")); +const util_1 = require("../util"); +exports.default = util_1.createRule({ + name: 'object-curly-spacing', + meta: Object.assign(Object.assign({}, object_curly_spacing_1.default.meta), { docs: { + description: 'Enforce consistent spacing inside braces', + category: 'Stylistic Issues', + recommended: false, + extendsBaseRule: true, + } }), + defaultOptions: ['never'], + create(context) { + const spaced = context.options[0] === 'always'; + const sourceCode = context.getSourceCode(); + /** + * Determines whether an option is set, relative to the spacing option. + * If spaced is "always", then check whether option is set to false. + * If spaced is "never", then check whether option is set to true. + * @param option The option to exclude. + * @returns Whether or not the property is excluded. + */ + function isOptionSet(option) { + return context.options[1] + ? context.options[1][option] === !spaced + : false; + } + const options = { + spaced, + arraysInObjectsException: isOptionSet('arraysInObjects'), + objectsInObjectsException: isOptionSet('objectsInObjects'), + }; + //-------------------------------------------------------------------------- + // Helpers + //-------------------------------------------------------------------------- + /** + * Reports that there shouldn't be a space after the first token + * @param node The node to report in the event of an error. + * @param token The token to use for the report. + */ + function reportNoBeginningSpace(node, token) { + const nextToken = context + .getSourceCode() + .getTokenAfter(token, { includeComments: true }); + context.report({ + node, + loc: { start: token.loc.end, end: nextToken.loc.start }, + messageId: 'unexpectedSpaceAfter', + data: { + token: token.value, + }, + fix(fixer) { + return fixer.removeRange([token.range[1], nextToken.range[0]]); + }, + }); + } + /** + * Reports that there shouldn't be a space before the last token + * @param node The node to report in the event of an error. + * @param token The token to use for the report. + */ + function reportNoEndingSpace(node, token) { + const previousToken = context + .getSourceCode() + .getTokenBefore(token, { includeComments: true }); + context.report({ + node, + loc: { start: previousToken.loc.end, end: token.loc.start }, + messageId: 'unexpectedSpaceBefore', + data: { + token: token.value, + }, + fix(fixer) { + return fixer.removeRange([previousToken.range[1], token.range[0]]); + }, + }); + } + /** + * Reports that there should be a space after the first token + * @param node The node to report in the event of an error. + * @param token The token to use for the report. + */ + function reportRequiredBeginningSpace(node, token) { + context.report({ + node, + loc: token.loc, + messageId: 'requireSpaceAfter', + data: { + token: token.value, + }, + fix(fixer) { + return fixer.insertTextAfter(token, ' '); + }, + }); + } + /** + * Reports that there should be a space before the last token + * @param node The node to report in the event of an error. + * @param token The token to use for the report. + */ + function reportRequiredEndingSpace(node, token) { + context.report({ + node, + loc: token.loc, + messageId: 'requireSpaceBefore', + data: { + token: token.value, + }, + fix(fixer) { + return fixer.insertTextBefore(token, ' '); + }, + }); + } + /** + * Determines if spacing in curly braces is valid. + * @param node The AST node to check. + * @param first The first token to check (should be the opening brace) + * @param second The second token to check (should be first after the opening brace) + * @param penultimate The penultimate token to check (should be last before closing brace) + * @param last The last token to check (should be closing brace) + */ + function validateBraceSpacing(node, first, second, penultimate, last) { + if (util_1.isTokenOnSameLine(first, second)) { + const firstSpaced = sourceCode.isSpaceBetween(first, second); + const secondType = sourceCode.getNodeByRangeIndex(second.range[0]) + .type; + const openingCurlyBraceMustBeSpaced = options.arraysInObjectsException && + secondType === experimental_utils_1.AST_NODE_TYPES.TSIndexSignature + ? !options.spaced + : options.spaced; + if (openingCurlyBraceMustBeSpaced && !firstSpaced) { + reportRequiredBeginningSpace(node, first); + } + if (!openingCurlyBraceMustBeSpaced && + firstSpaced && + second.type !== experimental_utils_1.AST_TOKEN_TYPES.Line) { + reportNoBeginningSpace(node, first); + } + } + if (util_1.isTokenOnSameLine(penultimate, last)) { + const shouldCheckPenultimate = (options.arraysInObjectsException && + util_1.isClosingBracketToken(penultimate)) || + (options.objectsInObjectsException && + util_1.isClosingBraceToken(penultimate)); + const penultimateType = shouldCheckPenultimate && + sourceCode.getNodeByRangeIndex(penultimate.range[0]).type; + const closingCurlyBraceMustBeSpaced = (options.arraysInObjectsException && + penultimateType === experimental_utils_1.AST_NODE_TYPES.TSTupleType) || + (options.objectsInObjectsException && + penultimateType === experimental_utils_1.AST_NODE_TYPES.TSTypeLiteral) + ? !options.spaced + : options.spaced; + const lastSpaced = sourceCode.isSpaceBetween(penultimate, last); + if (closingCurlyBraceMustBeSpaced && !lastSpaced) { + reportRequiredEndingSpace(node, last); + } + if (!closingCurlyBraceMustBeSpaced && lastSpaced) { + reportNoEndingSpace(node, last); + } + } + } + /** + * Gets '}' token of an object node. + * + * Because the last token of object patterns might be a type annotation, + * this traverses tokens preceded by the last property, then returns the + * first '}' token. + * @param node The node to get. This node is an + * ObjectExpression or an ObjectPattern. And this node has one or + * more properties. + * @returns '}' token. + */ + function getClosingBraceOfObject(node) { + const lastProperty = node.members[node.members.length - 1]; + return sourceCode.getTokenAfter(lastProperty, util_1.isClosingBraceToken); + } + //-------------------------------------------------------------------------- + // Public + //-------------------------------------------------------------------------- + const rules = object_curly_spacing_1.default.create(context); + return Object.assign(Object.assign({}, rules), { TSTypeLiteral(node) { + if (node.members.length === 0) { + return; + } + const first = sourceCode.getFirstToken(node); + const last = getClosingBraceOfObject(node); + const second = sourceCode.getTokenAfter(first, { + includeComments: true, + }); + const penultimate = sourceCode.getTokenBefore(last, { + includeComments: true, + }); + validateBraceSpacing(node, first, second, penultimate, last); + } }); + }, +}); +//# sourceMappingURL=object-curly-spacing.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map new file mode 100644 index 0000000000..79c1a61748 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/object-curly-spacing.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-curly-spacing.js","sourceRoot":"","sources":["../../src/rules/object-curly-spacing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js index b10172c0e3..39194a8d69 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js @@ -85,6 +85,10 @@ exports.default = util.createRule({ const colonPos = call.returnType.range[0] - start; const text = sourceCode.getText().slice(start, call.range[1]); let suggestion = `${text.slice(0, colonPos)} =>${text.slice(colonPos + 1)}`; + const lastChar = suggestion.endsWith(';') ? ';' : ''; + if (lastChar) { + suggestion = suggestion.slice(0, -1); + } if (shouldWrapSuggestion(parent.parent)) { suggestion = `(${suggestion})`; } @@ -92,15 +96,16 @@ exports.default = util.createRule({ if (typeof parent.typeParameters !== 'undefined') { return `type ${sourceCode .getText() - .slice(parent.id.range[0], parent.typeParameters.range[1])} = ${suggestion}`; + .slice(parent.id.range[0], parent.typeParameters.range[1])} = ${suggestion}${lastChar}`; } - return `type ${parent.id.name} = ${suggestion}`; + return `type ${parent.id.name} = ${suggestion}${lastChar}`; } - return suggestion.endsWith(';') ? suggestion.slice(0, -1) : suggestion; + return suggestion; } /** * @param member The TypeElement being checked * @param node The parent of member being checked + * @param tsThisTypes */ function checkMember(member, node, tsThisTypes = null) { if ((member.type === experimental_utils_1.AST_NODE_TYPES.TSCallSignatureDeclaration || diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map index e87d7e229d..92c3b1ee1c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js.map @@ -1 +1 @@ -{"version":3,"file":"prefer-function-type.js","sourceRoot":"","sources":["../../src/rules/prefer-function-type.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"prefer-function-type.js","sourceRoot":"","sources":["../../src/rules/prefer-function-type.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js index b216a9c5e8..7fb94ed3f9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js @@ -20,11 +20,13 @@ var __importStar = (this && this.__importStar) || function (mod) { }; Object.defineProperty(exports, "__esModule", { value: true }); const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const ts = __importStar(require("typescript")); const util = __importStar(require("../util")); exports.default = util.createRule({ name: 'promise-function-async', meta: { type: 'suggestion', + fixable: 'code', docs: { description: 'Requires any function or method that returns a Promise to be marked async', category: 'Best Practices', @@ -82,6 +84,7 @@ exports.default = util.createRule({ const parserServices = util.getParserServices(context); const checker = parserServices.program.getTypeChecker(); function validateNode(node) { + var _a; const originalNode = parserServices.esTreeNodeToTSNodeMap.get(node); const signatures = checker .getTypeAtLocation(originalNode) @@ -91,17 +94,39 @@ exports.default = util.createRule({ } const returnType = checker.getReturnTypeOfSignature(signatures[0]); if (!util.containsAllTypesByName(returnType, allowAny, allAllowedPromiseNames)) { + // Return type is not a promise + return; + } + if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.TSAbstractMethodDefinition) { + // Abstract method can't be async return; } if (node.parent && (node.parent.type === experimental_utils_1.AST_NODE_TYPES.Property || node.parent.type === experimental_utils_1.AST_NODE_TYPES.MethodDefinition) && (node.parent.kind === 'get' || node.parent.kind === 'set')) { + // Getters and setters can't be async return; } + if (util.isTypeFlagSet(returnType, ts.TypeFlags.Any | ts.TypeFlags.Unknown)) { + // Report without auto fixer because the return type is unknown + return context.report({ + messageId: 'missingAsync', + node, + }); + } context.report({ messageId: 'missingAsync', node, + fix: fixer => { + if (node.parent && + (node.parent.type === experimental_utils_1.AST_NODE_TYPES.MethodDefinition || + (node.parent.type === experimental_utils_1.AST_NODE_TYPES.Property && + node.parent.method))) { + return fixer.insertTextBefore(node.parent.key, 'async '); + } + return fixer.insertTextBefore(node, 'async '); + }, }); } return { @@ -117,13 +142,14 @@ exports.default = util.createRule({ }, 'FunctionExpression[async = false]'(node) { if (node.parent && - 'kind' in node.parent && + node.parent.type === experimental_utils_1.AST_NODE_TYPES.MethodDefinition && node.parent.kind === 'method') { if (checkMethodDeclarations) { - validateNode(node.parent); + validateNode(node); } + return; } - else if (checkFunctionExpressions) { + if (checkFunctionExpressions) { validateNode(node); } }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map index bfd56d5d90..904b541ec2 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js.map @@ -1 +1 @@ -{"version":3,"file":"promise-function-async.js","sourceRoot":"","sources":["../../src/rules/promise-function-async.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,8EAG+C;AAC/C,8CAAgC;AAchC,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EACT,2EAA2E;YAC7E,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,IAAI;SAC3B;QACD,QAAQ,EAAE;YACR,YAAY,EAAE,+CAA+C;SAC9D;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE,SAAS;qBAChB;oBACD,mBAAmB,EAAE;wBACnB,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;yBACf;qBACF;oBACD,mBAAmB,EAAE;wBACnB,IAAI,EAAE,SAAS;qBAChB;oBACD,yBAAyB,EAAE;wBACzB,IAAI,EAAE,SAAS;qBAChB;oBACD,wBAAwB,EAAE;wBACxB,IAAI,EAAE,SAAS;qBAChB;oBACD,uBAAuB,EAAE;wBACvB,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,QAAQ,EAAE,IAAI;YACd,mBAAmB,EAAE,EAAE;YACvB,mBAAmB,EAAE,IAAI;YACzB,yBAAyB,EAAE,IAAI;YAC/B,wBAAwB,EAAE,IAAI;YAC9B,uBAAuB,EAAE,IAAI;SAC9B;KACF;IACD,MAAM,CACJ,OAAO,EACP,CACE,EACE,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,GACxB,EACF;QAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;YACrC,SAAS;YACT,GAAG,mBAAoB;SACxB,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAExD,SAAS,YAAY,CACnB,IAKuC;YAEvC,MAAM,YAAY,GAAG,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpE,MAAM,UAAU,GAAG,OAAO;iBACvB,iBAAiB,CAAC,YAAY,CAAC;iBAC/B,iBAAiB,EAAE,CAAC;YACvB,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;gBACtB,OAAO;aACR;YACD,MAAM,UAAU,GAAG,OAAO,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnE,IACE,CAAC,IAAI,CAAC,sBAAsB,CAC1B,UAAU,EACV,QAAS,EACT,sBAAsB,CACvB,EACD;gBACA,OAAO;aACR;YAED,IACE,IAAI,CAAC,MAAM;gBACX,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,QAAQ;oBAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,mCAAc,CAAC,gBAAgB,CAAC;gBACvD,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,EAC1D;gBACA,OAAO;aACR;YAED,OAAO,CAAC,MAAM,CAAC;gBACb,SAAS,EAAE,cAAc;gBACzB,IAAI;aACL,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,wCAAwC,CACtC,IAAsC;gBAEtC,IAAI,mBAAmB,EAAE;oBACvB,YAAY,CAAC,IAAI,CAAC,CAAC;iBACpB;YACH,CAAC;YACD,oCAAoC,CAClC,IAAkC;gBAElC,IAAI,yBAAyB,EAAE;oBAC7B,YAAY,CAAC,IAAI,CAAC,CAAC;iBACpB;YACH,CAAC;YACD,mCAAmC,CACjC,IAAiC;gBAEjC,IACE,IAAI,CAAC,MAAM;oBACX,MAAM,IAAI,IAAI,CAAC,MAAM;oBACrB,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAC7B;oBACA,IAAI,uBAAuB,EAAE;wBAC3B,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC3B;iBACF;qBAAM,IAAI,wBAAwB,EAAE;oBACnC,YAAY,CAAC,IAAI,CAAC,CAAC;iBACpB;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"promise-function-async.js","sourceRoot":"","sources":["../../src/rules/promise-function-async.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js new file mode 100644 index 0000000000..a91aaee0fe --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js @@ -0,0 +1,229 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const experimental_utils_1 = require("@typescript-eslint/experimental-utils"); +const util = __importStar(require("../util")); +const util_1 = require("../util"); +var Group; +(function (Group) { + Group["conditional"] = "conditional"; + Group["function"] = "function"; + Group["import"] = "import"; + Group["intersection"] = "intersection"; + Group["keyword"] = "keyword"; + Group["nullish"] = "nullish"; + Group["literal"] = "literal"; + Group["named"] = "named"; + Group["object"] = "object"; + Group["operator"] = "operator"; + Group["tuple"] = "tuple"; + Group["union"] = "union"; +})(Group || (Group = {})); +function getGroup(node) { + switch (node.type) { + case experimental_utils_1.AST_NODE_TYPES.TSParenthesizedType: + return getGroup(node.typeAnnotation); + case experimental_utils_1.AST_NODE_TYPES.TSConditionalType: + return Group.conditional; + case experimental_utils_1.AST_NODE_TYPES.TSConstructorType: + case experimental_utils_1.AST_NODE_TYPES.TSFunctionType: + return Group.function; + case experimental_utils_1.AST_NODE_TYPES.TSImportType: + return Group.import; + case experimental_utils_1.AST_NODE_TYPES.TSIntersectionType: + return Group.intersection; + case experimental_utils_1.AST_NODE_TYPES.TSAnyKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSBigIntKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSBooleanKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSNeverKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSNumberKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSObjectKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSStringKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSSymbolKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSThisType: + case experimental_utils_1.AST_NODE_TYPES.TSUnknownKeyword: + return Group.keyword; + case experimental_utils_1.AST_NODE_TYPES.TSNullKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSUndefinedKeyword: + case experimental_utils_1.AST_NODE_TYPES.TSVoidKeyword: + return Group.nullish; + case experimental_utils_1.AST_NODE_TYPES.TSLiteralType: + case experimental_utils_1.AST_NODE_TYPES.TSTemplateLiteralType: + return Group.literal; + case experimental_utils_1.AST_NODE_TYPES.TSArrayType: + case experimental_utils_1.AST_NODE_TYPES.TSIndexedAccessType: + case experimental_utils_1.AST_NODE_TYPES.TSInferType: + case experimental_utils_1.AST_NODE_TYPES.TSTypeReference: + return Group.named; + case experimental_utils_1.AST_NODE_TYPES.TSMappedType: + case experimental_utils_1.AST_NODE_TYPES.TSTypeLiteral: + return Group.object; + case experimental_utils_1.AST_NODE_TYPES.TSTypeOperator: + case experimental_utils_1.AST_NODE_TYPES.TSTypeQuery: + return Group.operator; + case experimental_utils_1.AST_NODE_TYPES.TSTupleType: + return Group.tuple; + case experimental_utils_1.AST_NODE_TYPES.TSUnionType: + return Group.union; + // These types should never occur as part of a union/intersection + case experimental_utils_1.AST_NODE_TYPES.TSInterfaceHeritage: + case experimental_utils_1.AST_NODE_TYPES.TSNamedTupleMember: + case experimental_utils_1.AST_NODE_TYPES.TSOptionalType: + case experimental_utils_1.AST_NODE_TYPES.TSRestType: + case experimental_utils_1.AST_NODE_TYPES.TSTypePredicate: + /* istanbul ignore next */ + throw new Error(`Unexpected Type ${node.type}`); + } +} +exports.default = util.createRule({ + name: 'sort-type-union-intersection-members', + meta: { + type: 'suggestion', + docs: { + description: 'Enforces that members of a type union/intersection are sorted alphabetically', + category: 'Stylistic Issues', + recommended: false, + }, + fixable: 'code', + messages: { + notSorted: '{{type}} type members must be sorted.', + notSortedNamed: '{{type}} type {{name}} members must be sorted.', + suggestFix: 'Sort members of type (removes all comments).', + }, + schema: [ + { + type: 'object', + properties: { + checkIntersections: { + type: 'boolean', + }, + checkUnions: { + type: 'boolean', + }, + groupOrder: { + type: 'array', + items: { + type: 'string', + enum: util_1.getEnumNames(Group), + }, + }, + }, + }, + ], + }, + defaultOptions: [ + { + checkIntersections: true, + checkUnions: true, + groupOrder: [ + Group.named, + Group.keyword, + Group.operator, + Group.literal, + Group.function, + Group.import, + Group.conditional, + Group.object, + Group.tuple, + Group.intersection, + Group.union, + Group.nullish, + ], + }, + ], + create(context, [{ checkIntersections, checkUnions, groupOrder }]) { + const sourceCode = context.getSourceCode(); + const collator = new Intl.Collator('en', { + sensitivity: 'base', + numeric: true, + }); + function checkSorting(node) { + var _a; + const sourceOrder = node.types.map(type => { + var _a; + const group = (_a = groupOrder === null || groupOrder === void 0 ? void 0 : groupOrder.indexOf(getGroup(type))) !== null && _a !== void 0 ? _a : -1; + return { + group: group === -1 ? Number.MAX_SAFE_INTEGER : group, + node: type, + text: sourceCode.getText(type), + }; + }); + const expectedOrder = [...sourceOrder].sort((a, b) => { + if (a.group !== b.group) { + return a.group - b.group; + } + return (collator.compare(a.text, b.text) || + (a.text < b.text ? -1 : a.text > b.text ? 1 : 0)); + }); + const hasComments = node.types.some(type => { + const count = sourceCode.getCommentsBefore(type).length + + sourceCode.getCommentsAfter(type).length; + return count > 0; + }); + for (let i = 0; i < expectedOrder.length; i += 1) { + if (expectedOrder[i].node !== sourceOrder[i].node) { + let messageId = 'notSorted'; + const data = { + name: '', + type: node.type === experimental_utils_1.AST_NODE_TYPES.TSIntersectionType + ? 'Intersection' + : 'Union', + }; + if (((_a = node.parent) === null || _a === void 0 ? void 0 : _a.type) === experimental_utils_1.AST_NODE_TYPES.TSTypeAliasDeclaration) { + messageId = 'notSortedNamed'; + data.name = node.parent.id.name; + } + const fix = fixer => { + const sorted = expectedOrder + .map(t => t.text) + .join(node.type === experimental_utils_1.AST_NODE_TYPES.TSIntersectionType ? ' & ' : ' | '); + return fixer.replaceText(node, sorted); + }; + return context.report(Object.assign({ node, + messageId, + data }, (hasComments + ? { + suggest: [ + { + messageId: 'suggestFix', + fix, + }, + ], + } + : { fix }))); + } + } + } + return { + TSIntersectionType(node) { + if (checkIntersections === true) { + checkSorting(node); + } + }, + TSUnionType(node) { + if (checkUnions === true) { + checkSorting(node); + } + }, + }; + }, +}); +//# sourceMappingURL=sort-type-union-intersection-members.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js.map new file mode 100644 index 0000000000..0604b9c17e --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-union-intersection-members.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sort-type-union-intersection-members.js","sourceRoot":"","sources":["../../src/rules/sort-type-union-intersection-members.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js index 249bf798b8..3b71dd8e56 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js @@ -9,7 +9,37 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getNameLocationInGlobalDirectiveComment = void 0; +const escapeRegExp_1 = __importDefault(require("lodash/escapeRegExp")); // deeply re-export, for convenience __exportStar(require("@typescript-eslint/experimental-utils/dist/ast-utils"), exports); +// The following is copied from `eslint`'s source code since it doesn't exist in eslint@5. +// https://github.com/eslint/eslint/blob/145aec1ab9052fbca96a44d04927c595951b1536/lib/rules/utils/ast-utils.js#L1751-L1779 +// Could be export { getNameLocationInGlobalDirectiveComment } from 'eslint/lib/rules/utils/ast-utils' +/** + * Get the `loc` object of a given name in a `/*globals` directive comment. + * @param {SourceCode} sourceCode The source code to convert index to loc. + * @param {Comment} comment The `/*globals` directive comment which include the name. + * @param {string} name The name to find. + * @returns {SourceLocation} The `loc` object. + */ +function getNameLocationInGlobalDirectiveComment(sourceCode, comment, name) { + const namePattern = new RegExp(`[\\s,]${escapeRegExp_1.default(name)}(?:$|[\\s,:])`, 'gu'); + // To ignore the first text "global". + namePattern.lastIndex = comment.value.indexOf('global') + 6; + // Search a given variable name. + const match = namePattern.exec(comment.value); + // Convert the index to loc. + const start = sourceCode.getLocFromIndex(comment.range[0] + '/*'.length + (match ? match.index + 1 : 0)); + const end = { + line: start.line, + column: start.column + (match ? name.length : 1), + }; + return { start, end }; +} +exports.getNameLocationInGlobalDirectiveComment = getNameLocationInGlobalDirectiveComment; //# sourceMappingURL=astUtils.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map index 872e04e40e..1ccf3521be 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js.map @@ -1 +1 @@ -{"version":3,"file":"astUtils.js","sourceRoot":"","sources":["../../src/util/astUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAoC;AACpC,uFAAqE"} \ No newline at end of file +{"version":3,"file":"astUtils.js","sourceRoot":"","sources":["../../src/util/astUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,uEAA+C;AAE/C,oCAAoC;AACpC,uFAAqE;AAErE,0FAA0F;AAC1F,0HAA0H;AAC1H,sGAAsG;AACtG;;;;;;GAMG;AACH,SAAgB,uCAAuC,CACrD,UAA+B,EAC/B,OAAyB,EACzB,IAAY;IAEZ,MAAM,WAAW,GAAG,IAAI,MAAM,CAC5B,SAAS,sBAAY,CAAC,IAAI,CAAC,eAAe,EAC1C,IAAI,CACL,CAAC;IAEF,qCAAqC;IACrC,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAE5D,gCAAgC;IAChC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE9C,4BAA4B;IAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,eAAe,CACtC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/D,CAAC;IACF,MAAM,GAAG,GAAG;QACV,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;KACjD,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACxB,CAAC;AA1BD,0FA0BC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js b/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js index 0ee38892bb..c99fe78cb2 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js @@ -45,6 +45,11 @@ class UnusedVarsVisitor extends Visitor_1.Visitor { visitChildrenEvenIfSelectorExists: true, }); _scopeManager.set(this, void 0); + //#endregion HELPERS + //#region VISITORS + // NOTE - This is a simple visitor - meaning it does not support selectors + this.ClassDeclaration = this.visitClass; + this.ClassExpression = this.visitClass; this.FunctionDeclaration = this.visitFunction; this.FunctionExpression = this.visitFunction; this.MethodDefinition = this.visitSetter; @@ -137,6 +142,16 @@ class UnusedVarsVisitor extends Visitor_1.Visitor { currentScope = currentScope.upper; } } + visitClass(node) { + // skip a variable of class itself name in the class scope + const scope = this.getScope(node); + for (const variable of scope.variables) { + if (variable.identifiers[0] === scope.block.id) { + this.markVariableAsUsed(variable); + return; + } + } + } visitFunction(node) { const scope = this.getScope(node); // skip implicit "arguments" variable @@ -164,19 +179,6 @@ class UnusedVarsVisitor extends Visitor_1.Visitor { } } } - //#endregion HELPERS - //#region VISITORS - // NOTE - This is a simple visitor - meaning it does not support selectors - ClassDeclaration(node) { - // skip a variable of class itself name in the class scope - const scope = this.getScope(node); - for (const variable of scope.variables) { - if (variable.identifiers[0] === scope.block.id) { - this.markVariableAsUsed(variable); - return; - } - } - } ForInStatement(node) { /** * (Brad Zacher): I hate that this has to exist. diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js.map b/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js.map index e23df11fc9..b5a9601cbf 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js.map @@ -1 +1 @@ -{"version":3,"file":"collectUnusedVariables.js","sourceRoot":"","sources":["../../src/util/collectUnusedVariables.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"collectUnusedVariables.js","sourceRoot":"","sources":["../../src/util/collectUnusedVariables.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md index a6d06aae85..c30e59b40b 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md @@ -25,7 +25,7 @@ const defaultOptions: Options = { This option defines the expected import kind for type-only imports. Valid values for `prefer` are: -- `type-imports` will enforce that you always use `import type Foo from '...'`. It is default. +- `type-imports` will enforce that you always use `import type Foo from '...'` except referenced by metadata of decorators. It is default. - `no-type-imports` will enforce that you always use `import Foo from '...'`. Examples of **correct** code with `{prefer: 'type-imports'}`, and **incorrect** code with `{prefer: 'no-type-imports'}`. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md index b155c2aeb3..da83ada2bb 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md @@ -18,7 +18,7 @@ or more of the following you may pass an object with the options set as follows: - `allowDefinitionFiles` set to `true` will allow you to `declare` and use custom TypeScript modules and namespaces inside definition files (Default: `true`). -Examples of **incorrect** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": false }` options: +Examples of **incorrect** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": true }` options: ```ts module foo {} @@ -26,14 +26,14 @@ namespace foo {} declare module foo {} declare namespace foo {} - -// anything inside a d.ts file ``` -Examples of **correct** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": false }` options: +Examples of **correct** code for the default `{ "allowDeclarations": false, "allowDefinitionFiles": true }` options: ```ts declare module 'foo' {} + +// anything inside a d.ts file ``` ### `allowDeclarations` diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md index d600bb7930..972b48a3bd 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md @@ -8,6 +8,10 @@ This rule ensures that you do not include unnecessary comparisons with boolean l A comparison is considered unnecessary if it checks a boolean literal against any variable with just the `boolean` type. A comparison is **_not_** considered unnecessary if the type is a union of booleans (`string | boolean`, `someObject | boolean`). +**Warning**: Do not use this rule when `strictNullChecks` is disabled. +ESLint is not able to distinguish between `false` and `undefined` or `null` values. +This can cause unintended code changes when using autofix. + **Note**: Throughout this page, only strict equality (`===` and `!==`) are used in the examples. However, the implementation of the rule does not distinguish between strict and loose equality. Any example below that uses diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md new file mode 100644 index 0000000000..473f83b0a9 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md @@ -0,0 +1,27 @@ +# Prefers a non-null assertion over explicit type cast when possible (`non-nullable-type-assertion-style`) + +This rule detects when an `as` cast is doing the same job as a `!` would, and suggests fixing the code to be an `!`. + +## Rule Details + +Examples of **incorrect** code for this rule: + +```ts +const maybe = Math.random() > 0.5 ? '' : undefined; + +const definitely = maybe as string; +const alsoDefinitely = maybe; +``` + +Examples of **correct** code for this rule: + +```ts +const maybe = Math.random() > 0.5 ? '' : undefined; + +const definitely = maybe!; +const alsoDefinitely = maybe!; +``` + +## When Not To Use It + +If you don't mind having unnecessarily verbose type casts, you can avoid this rule. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md new file mode 100644 index 0000000000..44bd35afb5 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md @@ -0,0 +1,22 @@ +# Enforce consistent spacing inside braces (`object-curly-spacing`) + +## Rule Details + +This rule extends the base [`eslint/object-curly-spacing`](https://eslint.org/docs/rules/object-curly-spacing) rule. +It adds support for TypeScript's object types. + +## How to use + +```cjson +{ + // note you must disable the base rule as it can report incorrect errors + "object-curly-spacing": "off", + "@typescript-eslint/object-curly-spacing": ["error"] +} +``` + +## Options + +See [`eslint/object-curly-spacing` options](https://eslint.org/docs/rules/object-curly-spacing#options). + +Taken with ❤️ [from ESLint core](https://github.com/eslint/eslint/blob/master/docs/rules/object-curly-spacing.md) diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-union-intersection-members.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-union-intersection-members.md new file mode 100644 index 0000000000..43ef069a71 --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-union-intersection-members.md @@ -0,0 +1,147 @@ +# Enforces that members of a type union/intersection are sorted alphabetically (`sort-type-union-intersection-members`) + +Sorting union (`|`) and intersection (`&`) types can help: + +- keep your codebase standardized +- find repeated types +- reduce diff churn + +## Rule Details + +Sorting within each group is done using the following code: + +```ts +const collator = new Intl.Collator('en', { + sensitivity: 'base', + numeric: true, +}); + +function compare(a, b) { + return collator.compare(a, b) || (a < b ? -1 : a > b ? 1 : 0); +} +``` + +In other words, the types are sorted alphabetically, case-insensitively and treating numbers like a human would, falling back to character code sorting in case of ties. + +Examples of **incorrect** code for this rule: + +```ts +type T1 = B | A; + +type T2 = { b: string } & { a: string }; + +type T3 = [1, 2, 4] & [1, 2, 3]; + +type T4 = + | [1, 2, 4] + | [1, 2, 3] + | { b: string } + | { a: string } + | (() => void) + | (() => string) + | 'b' + | 'a' + | 'b' + | 'a' + | readonly string[] + | readonly number[] + | string[] + | number[] + | B + | A + | string + | any; +``` + +Examples of **correct** code for this rule: + +```ts +type T1 = A | B; + +type T2 = { a: string } & { b: string }; + +type T3 = [1, 2, 3] & [1, 2, 4]; + +type T4 = + | any + | string + | A + | B + | number[] + | string[] + | readonly number[] + | readonly string[] + | 'a' + | 'b' + | 'a' + | 'b' + | (() => string) + | (() => void) + | { a: string } + | { b: string } + | [1, 2, 3] + | [1, 2, 4]; +``` + +## Options + +```ts +type Options = { + // true to check intersection types, false otherwise + checkIntersections?: boolean; + // true to check union types, false otherwise + checkUnions?: boolean; + // the ordering of the groups + groupOrder?: ( + | 'conditional' + | 'function' + | 'import' + | 'intersection' + | 'keyword' + | 'literal' + | 'named' + | 'object' + | 'operator' + | 'tuple' + | 'union' + | 'nullish' + )[]; +}; + +const defaultOptions: Options = { + checkIntersections: true, + checkUnions: true, + groupOrder: [ + 'named', + 'keyword', + 'operator', + 'literal', + 'function', + 'import', + 'conditional', + 'object', + 'tuple', + 'intersection', + 'union', + 'nullish', + ], +}; +``` + +### `groupOrder` + +Each member of the type is placed into a group, and then the rule sorts alphabetically within each group. +The ordering of groups is determined by this option. + +- `conditional` - Conditional types (`A extends B ? C : D`) +- `function` - Function and constructor types (`() => void`, `new () => type`) +- `import` - Import types (`import('path')`) +- `intersection` - Intersection types (`A & B`) +- `keyword` - Keyword types (`any`, `string`, etc) +- `literal` - Literal types (`1`, `'b'`, `true`, etc) +- `named` - Named types (`A`, `A['prop']`, `B[]`, `Array`) +- `object` - Object types (`{ a: string }`, `{ [key: string]: number }`) +- `operator` - Operator types (`keyof A`, `typeof B`, `readonly C[]`) +- `tuple` - Tuple types (`[A, B, C]`) +- `union` - Union types (`A | B`) +- `nullish` - `null` and `undefined` diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md index 243d54fda1..9eb5712ab4 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md @@ -50,7 +50,7 @@ while (obj) { Examples of **correct** code for this rule: ```tsx -// Using logical operators for their side effects is allowed +// Using logical operator short-circuiting is allowed const Component = () => { const entry = map.get('foo') || {}; return entry &&

Name: {entry.name}

; diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/comparator.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/comparator.js index 3595792d0e..dbbef2d8fe 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/comparator.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/comparator.js @@ -5,12 +5,7 @@ class Comparator { return ANY } constructor (comp, options) { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) if (comp instanceof Comparator) { if (comp.loose === !!options.loose) { @@ -132,6 +127,7 @@ class Comparator { module.exports = Comparator +const parseOptions = require('../internal/parse-options') const {re, t} = require('../internal/re') const cmp = require('../functions/cmp') const debug = require('../internal/debug') diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/range.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/range.js index 83f8967717..aa04f6bff9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/range.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/range.js @@ -1,12 +1,7 @@ // hoisted class for cyclic dependency class Range { constructor (range, options) { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) if (range instanceof Range) { if ( @@ -46,6 +41,24 @@ class Range { throw new TypeError(`Invalid SemVer Range: ${range}`) } + // if we have any that are not the null set, throw out null sets. + if (this.set.length > 1) { + // keep the first one, in case they're all null sets + const first = this.set[0] + this.set = this.set.filter(c => !isNullSet(c[0])) + if (this.set.length === 0) + this.set = [first] + else if (this.set.length > 1) { + // if we have any that are *, then the range is just * + for (const c of this.set) { + if (c.length === 1 && isAny(c[0])) { + this.set = [c] + break + } + } + } + } + this.format() } @@ -64,8 +77,17 @@ class Range { } parseRange (range) { - const loose = this.options.loose range = range.trim() + + // memoize range parsing for performance. + // this is a very hot path, and fully deterministic. + const memoOpts = Object.keys(this.options).join(',') + const memoKey = `parseRange:${memoOpts}:${range}` + const cached = cache.get(memoKey) + if (cached) + return cached + + const loose = this.options.loose // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4` const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE] range = range.replace(hr, hyphenReplace(this.options.includePrerelease)) @@ -87,15 +109,33 @@ class Range { // ready to be split into comparators. const compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] - return range + const rangeList = range .split(' ') .map(comp => parseComparator(comp, this.options)) .join(' ') .split(/\s+/) + // >=0.0.0 is equivalent to * .map(comp => replaceGTE0(comp, this.options)) // in loose mode, throw out any that are not valid comparators .filter(this.options.loose ? comp => !!comp.match(compRe) : () => true) .map(comp => new Comparator(comp, this.options)) + + // if any comparators are the null set, then replace with JUST null set + // if more than one comparator, remove any * comparators + // also, don't include the same comparator more than once + const l = rangeList.length + const rangeMap = new Map() + for (const comp of rangeList) { + if (isNullSet(comp)) + return [comp] + rangeMap.set(comp.value, comp) + } + if (rangeMap.size > 1 && rangeMap.has('')) + rangeMap.delete('') + + const result = [...rangeMap.values()] + cache.set(memoKey, result) + return result } intersects (range, options) { @@ -144,6 +184,10 @@ class Range { } module.exports = Range +const LRU = require('lru-cache') +const cache = new LRU({ max: 1000 }) + +const parseOptions = require('../internal/parse-options') const Comparator = require('./comparator') const debug = require('../internal/debug') const SemVer = require('./semver') @@ -155,6 +199,9 @@ const { caretTrimReplace } = require('../internal/re') +const isNullSet = c => c.value === '<0.0.0-0' +const isAny = c => c.value === '' + // take a set of comparators and determine whether there // exists a version which can satisfy it const isSatisfiable = (comparators, options) => { diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/semver.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/semver.js index 73247ad2b7..ed81a7ec6c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/semver.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/classes/semver.js @@ -2,15 +2,12 @@ const debug = require('../internal/debug') const { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants') const { re, t } = require('../internal/re') +const parseOptions = require('../internal/parse-options') const { compareIdentifiers } = require('../internal/identifiers') class SemVer { constructor (version, options) { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) + if (version instanceof SemVer) { if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/parse.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/parse.js index 457fee04a9..11f20f0374 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/parse.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/functions/parse.js @@ -2,13 +2,9 @@ const {MAX_LENGTH} = require('../internal/constants') const { re, t } = require('../internal/re') const SemVer = require('../classes/semver') +const parseOptions = require('../internal/parse-options') const parse = (version, options) => { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) if (version instanceof SemVer) { return version diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/parse-options.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/parse-options.js new file mode 100644 index 0000000000..42d2ebd6fa --- /dev/null +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/internal/parse-options.js @@ -0,0 +1,11 @@ +// parse out just the options we care about so we always get a consistent +// obj with keys in a consistent order. +const opts = ['includePrerelease', 'loose', 'rtl'] +const parseOptions = options => + !options ? {} + : typeof options !== 'object' ? { loose: true } + : opts.filter(k => options[k]).reduce((options, k) => { + options[k] = true + return options + }, {}) +module.exports = parseOptions diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/package.json index e3b23c2fcf..a6b13def46 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/package.json @@ -1,6 +1,9 @@ { "bin": { - "semver": "./bin/semver.js" + "semver": "bin/semver.js" + }, + "dependencies": { + "lru-cache": "^6.0.0" }, "description": "The semantic version parser used by npm.", "devDependencies": { @@ -34,5 +37,5 @@ "check-coverage": true, "coverage-map": "map.js" }, - "version": "7.3.2" + "version": "7.3.4" } diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-version.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-version.js index 7118d237bf..2fac412914 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-version.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/min-version.js @@ -19,6 +19,7 @@ const minVersion = (range, loose) => { for (let i = 0; i < range.set.length; ++i) { const comparators = range.set[i] + let setMin = null comparators.forEach((comparator) => { // Clone to avoid manipulating the comparator's semver object. const compver = new SemVer(comparator.semver.version) @@ -33,8 +34,8 @@ const minVersion = (range, loose) => { /* fallthrough */ case '': case '>=': - if (!minver || gt(minver, compver)) { - minver = compver + if (!setMin || gt(compver, setMin)) { + setMin = compver } break case '<': @@ -46,6 +47,8 @@ const minVersion = (range, loose) => { throw new Error(`Unexpected operation: ${comparator.operator}`) } }) + if (setMin && (!minver || gt(minver, setMin))) + minver = setMin } if (minver && range.test(minver)) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/outside.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/outside.js index e35ed1176c..2a4b0a13f9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/outside.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/outside.js @@ -32,7 +32,7 @@ const outside = (version, range, hilo, options) => { throw new TypeError('Must provide a hilo val of "<" or ">"') } - // If it satisifes the range it is not outside + // If it satisfies the range it is not outside if (satisfies(version, range, options)) { return false } diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/subset.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/subset.js index 6ae29a3c92..bb7d15fe26 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/subset.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver/ranges/subset.js @@ -21,15 +21,18 @@ const compare = require('../functions/compare.js') // - If EQ satisfies every C, return true // - Else return false // - If GT -// - If GT is lower than any > or >= comp in C, return false +// - If GT.semver is lower than any > or >= comp in C, return false // - If GT is >=, and GT.semver does not satisfy every C, return false // - If LT -// - If LT.semver is greater than that of any > comp in C, return false +// - If LT.semver is greater than any < or <= comp in C, return false // - If LT is <=, and LT.semver does not satisfy every C, return false // - If any C is a = range, and GT or LT are set, return false // - Else return true const subset = (sub, dom, options) => { + if (sub === dom) + return true + sub = new Range(sub, options) dom = new Range(dom, options) let sawNonNull = false @@ -52,6 +55,9 @@ const subset = (sub, dom, options) => { } const simpleSubset = (sub, dom, options) => { + if (sub === dom) + return true + if (sub.length === 1 && sub[0].semver === ANY) return dom.length === 1 && dom[0].semver === ANY @@ -90,6 +96,7 @@ const simpleSubset = (sub, dom, options) => { if (!satisfies(eq, String(c), options)) return false } + return true } @@ -101,7 +108,7 @@ const simpleSubset = (sub, dom, options) => { if (gt) { if (c.operator === '>' || c.operator === '>=') { higher = higherGT(gt, c, options) - if (higher === c) + if (higher === c && higher !== gt) return false } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options)) return false @@ -109,7 +116,7 @@ const simpleSubset = (sub, dom, options) => { if (lt) { if (c.operator === '<' || c.operator === '<=') { lower = lowerLT(lt, c, options) - if (lower === c) + if (lower === c && lower !== lt) return false } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options)) return false diff --git a/node_modules/@typescript-eslint/eslint-plugin/package.json b/node_modules/@typescript-eslint/eslint-plugin/package.json index 3eb64e43b7..291b998f40 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/package.json @@ -3,10 +3,11 @@ "url": "https://github.com/typescript-eslint/typescript-eslint/issues" }, "dependencies": { - "@typescript-eslint/experimental-utils": "4.9.0", - "@typescript-eslint/scope-manager": "4.9.0", + "@typescript-eslint/experimental-utils": "4.15.0", + "@typescript-eslint/scope-manager": "4.15.0", "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", + "lodash": "^4.17.15", "regexpp": "^3.0.0", "semver": "^7.3.2", "tsutils": "^3.17.1" @@ -35,7 +36,7 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "f714911944b95dd4495166b35ff7784aedac1451", + "gitHead": "964cda3d9ddf1a8b95b2f3c410af43083845e54d", "keywords": [ "eslint", "eslintplugin", @@ -72,5 +73,5 @@ "test": "jest --coverage", "typecheck": "tsc -p tsconfig.json --noEmit" }, - "version": "4.9.0" + "version": "4.15.0" } diff --git a/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md b/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md index ffb1047efe..d3b720095c 100644 --- a/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md +++ b/node_modules/@typescript-eslint/experimental-utils/CHANGELOG.md @@ -3,6 +3,86 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.2...v4.15.0) (2021-02-08) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [4.14.2](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.1...v4.14.2) (2021-02-01) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [4.14.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.0...v4.14.1) (2021-01-25) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [4.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.13.0...v4.14.0) (2021-01-18) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [4.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.12.0...v4.13.0) (2021-01-11) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [4.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.1...v4.12.0) (2021-01-04) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [4.11.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.0...v4.11.1) (2020-12-28) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +# [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + +## [4.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.0...v4.9.1) (2020-12-07) + +**Note:** Version bump only for package @typescript-eslint/experimental-utils + + + + + # [4.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.8.2...v4.9.0) (2020-11-30) diff --git a/node_modules/@typescript-eslint/experimental-utils/package.json b/node_modules/@typescript-eslint/experimental-utils/package.json index a08011420d..848a07ce1e 100644 --- a/node_modules/@typescript-eslint/experimental-utils/package.json +++ b/node_modules/@typescript-eslint/experimental-utils/package.json @@ -4,9 +4,9 @@ }, "dependencies": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.9.0", - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/typescript-estree": "4.9.0", + "@typescript-eslint/scope-manager": "4.15.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/typescript-estree": "4.15.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" }, @@ -28,7 +28,7 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "f714911944b95dd4495166b35ff7784aedac1451", + "gitHead": "964cda3d9ddf1a8b95b2f3c410af43083845e54d", "keywords": [ "eslint", "typescript", @@ -63,5 +63,5 @@ ] } }, - "version": "4.9.0" + "version": "4.15.0" } diff --git a/node_modules/@typescript-eslint/parser/CHANGELOG.md b/node_modules/@typescript-eslint/parser/CHANGELOG.md index 0941e5c742..04851bff13 100644 --- a/node_modules/@typescript-eslint/parser/CHANGELOG.md +++ b/node_modules/@typescript-eslint/parser/CHANGELOG.md @@ -3,6 +3,89 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.2...v4.15.0) (2021-02-08) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [4.14.2](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.1...v4.14.2) (2021-02-01) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [4.14.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.0...v4.14.1) (2021-01-25) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [4.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.13.0...v4.14.0) (2021-01-18) + + +### Features + +* add support for decorator metadata in scope analysis and in consistent-type-imports ([#2751](https://github.com/typescript-eslint/typescript-eslint/issues/2751)) ([445e416](https://github.com/typescript-eslint/typescript-eslint/commit/445e416878b27a54bf07c2d3b84dabd7b06e51bc)), closes [#2559](https://github.com/typescript-eslint/typescript-eslint/issues/2559) + + + + + +# [4.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.12.0...v4.13.0) (2021-01-11) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [4.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.1...v4.12.0) (2021-01-04) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [4.11.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.0...v4.11.1) (2020-12-28) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +# [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + +## [4.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.0...v4.9.1) (2020-12-07) + +**Note:** Version bump only for package @typescript-eslint/parser + + + + + # [4.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.8.2...v4.9.0) (2020-11-30) **Note:** Version bump only for package @typescript-eslint/parser diff --git a/node_modules/@typescript-eslint/parser/README.md b/node_modules/@typescript-eslint/parser/README.md index f6417fd588..0599f61b23 100644 --- a/node_modules/@typescript-eslint/parser/README.md +++ b/node_modules/@typescript-eslint/parser/README.md @@ -45,7 +45,7 @@ By far the most common case will be installing the [`@typescript-eslint/eslint-p ## Configuration -The following additional configuration options are available by specifying them in [`parserOptions`](https://eslint.org/docs/user-guide/configuring#specifying-parser-options) in your ESLint configuration file. +The following additional configuration options are available by specifying them in [`parserOptions`](https://eslint.org/docs/user-guide/configuring/language-options#specifying-parser-options) in your ESLint configuration file. ```ts interface ParserOptions { @@ -99,6 +99,8 @@ Accepts any valid ECMAScript version number: - A version: es3, es5, es6, es7, es8, es9, es10, es11, ..., or - A year: es2015, es2016, es2017, es2018, es2019, es2020, ... +The value **must** be a number - so do not include the `es` prefix. + Specifies the version of ECMAScript syntax you want to use. This is used by the parser to determine how to perform scope analysis, and it affects the default ### `parserOptions.jsxPragma` diff --git a/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map b/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map index f5169d904f..61bdab3427 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map +++ b/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAO,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAEL,cAAc,EAEd,WAAW,EACZ,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,YAAY,EACb,MAAM,kCAAkC,CAAC;AAM1C,UAAU,oBAAoB;IAC5B,GAAG,EAAE,QAAQ,CAAC,OAAO,GAAG;QACtB,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,OAAO,WAAW,CAAC;IAChC,YAAY,EAAE,YAAY,CAAC;CAC5B;AA+CD,iBAAS,KAAK,CACZ,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GACtB,oBAAoB,CAAC,KAAK,CAAC,CAE7B;AAED,iBAAS,cAAc,CACrB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,GAC7B,oBAAoB,CAwFtB;AAED,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAO,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAEL,cAAc,EAEd,WAAW,EACZ,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAGL,YAAY,EACb,MAAM,kCAAkC,CAAC;AAM1C,UAAU,oBAAoB;IAC5B,GAAG,EAAE,QAAQ,CAAC,OAAO,GAAG;QACtB,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,OAAO,WAAW,CAAC;IAChC,YAAY,EAAE,YAAY,CAAC;CAC5B;AA+CD,iBAAS,KAAK,CACZ,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GACtB,oBAAoB,CAAC,KAAK,CAAC,CAE7B;AAED,iBAAS,cAAc,CACrB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,GAC7B,oBAAoB,CA4FtB;AAED,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/dist/parser.js b/node_modules/@typescript-eslint/parser/dist/parser.js index fb624c4a1b..930be7db77 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser.js +++ b/node_modules/@typescript-eslint/parser/dist/parser.js @@ -121,6 +121,10 @@ function parseForESLint(code, options) { log('Resolved jsxFragmentName from program: %s', analyzeOptions.jsxFragmentName); } } + if (compilerOptions.emitDecoratorMetadata === true) { + analyzeOptions.emitDecoratorMetadata = + compilerOptions.emitDecoratorMetadata; + } } const scopeManager = scope_manager_1.analyze(ast, analyzeOptions); return { ast, services, scopeManager, visitorKeys: typescript_estree_1.visitorKeys }; diff --git a/node_modules/@typescript-eslint/parser/dist/parser.js.map b/node_modules/@typescript-eslint/parser/dist/parser.js.map index cf7c75c4f6..1398abe875 100644 --- a/node_modules/@typescript-eslint/parser/dist/parser.js.map +++ b/node_modules/@typescript-eslint/parser/dist/parser.js.map @@ -1 +1 @@ -{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/package.json b/node_modules/@typescript-eslint/parser/package.json index 2340c4eb95..bfae962ed1 100644 --- a/node_modules/@typescript-eslint/parser/package.json +++ b/node_modules/@typescript-eslint/parser/package.json @@ -3,16 +3,16 @@ "url": "https://github.com/typescript-eslint/typescript-eslint/issues" }, "dependencies": { - "@typescript-eslint/scope-manager": "4.9.0", - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/typescript-estree": "4.9.0", + "@typescript-eslint/scope-manager": "4.15.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/typescript-estree": "4.15.0", "debug": "^4.1.1" }, "description": "An ESLint custom parser which leverages TypeScript ESTree", "devDependencies": { "@types/glob": "*", - "@typescript-eslint/experimental-utils": "4.9.0", - "@typescript-eslint/shared-fixtures": "4.9.0", + "@typescript-eslint/experimental-utils": "4.15.0", + "@typescript-eslint/shared-fixtures": "4.15.0", "glob": "*", "typescript": "*" }, @@ -28,7 +28,7 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "f714911944b95dd4495166b35ff7784aedac1451", + "gitHead": "964cda3d9ddf1a8b95b2f3c410af43083845e54d", "keywords": [ "ast", "ecmascript", @@ -72,5 +72,5 @@ ] } }, - "version": "4.9.0" + "version": "4.15.0" } diff --git a/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md b/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md index 6866a37cec..1173088c27 100644 --- a/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md +++ b/node_modules/@typescript-eslint/scope-manager/CHANGELOG.md @@ -3,6 +3,98 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.2...v4.15.0) (2021-02-08) + + +### Bug Fixes + +* **scope-manager:** fix visiting of TSImportType ([#3008](https://github.com/typescript-eslint/typescript-eslint/issues/3008)) ([ce4fcbf](https://github.com/typescript-eslint/typescript-eslint/commit/ce4fcbf4401098387a2cf19ae8457c89c509239a)), closes [#3006](https://github.com/typescript-eslint/typescript-eslint/issues/3006) + + + + + +## [4.14.2](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.1...v4.14.2) (2021-02-01) + + +### Bug Fixes + +* **scope-manager:** correctly reference generic parameters when decorator metadata is enabled ([#2975](https://github.com/typescript-eslint/typescript-eslint/issues/2975)) ([7695ef3](https://github.com/typescript-eslint/typescript-eslint/commit/7695ef318f1cc8688acaabf4f2730769622f083f)), closes [#2972](https://github.com/typescript-eslint/typescript-eslint/issues/2972) + + + + + +## [4.14.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.0...v4.14.1) (2021-01-25) + + +### Bug Fixes + +* **scope-manager:** fix incorrect handling of class decorators and class method default params ([#2943](https://github.com/typescript-eslint/typescript-eslint/issues/2943)) ([e1eac83](https://github.com/typescript-eslint/typescript-eslint/commit/e1eac8312268d1855a2ed7784b4d190ecb9c9fa4)), closes [#2941](https://github.com/typescript-eslint/typescript-eslint/issues/2941) [#2942](https://github.com/typescript-eslint/typescript-eslint/issues/2942) [#2751](https://github.com/typescript-eslint/typescript-eslint/issues/2751) + + + + + +# [4.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.13.0...v4.14.0) (2021-01-18) + + +### Features + +* add support for decorator metadata in scope analysis and in consistent-type-imports ([#2751](https://github.com/typescript-eslint/typescript-eslint/issues/2751)) ([445e416](https://github.com/typescript-eslint/typescript-eslint/commit/445e416878b27a54bf07c2d3b84dabd7b06e51bc)), closes [#2559](https://github.com/typescript-eslint/typescript-eslint/issues/2559) + + + + + +# [4.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.12.0...v4.13.0) (2021-01-11) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + +# [4.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.1...v4.12.0) (2021-01-04) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + +## [4.11.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.0...v4.11.1) (2020-12-28) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + +# [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + +## [4.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.0...v4.9.1) (2020-12-07) + +**Note:** Version bump only for package @typescript-eslint/scope-manager + + + + + # [4.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.8.2...v4.9.0) (2020-11-30) diff --git a/node_modules/@typescript-eslint/scope-manager/README.md b/node_modules/@typescript-eslint/scope-manager/README.md index 24ccd839df..7671214e8d 100644 --- a/node_modules/@typescript-eslint/scope-manager/README.md +++ b/node_modules/@typescript-eslint/scope-manager/README.md @@ -83,6 +83,12 @@ interface AnalyzeOptions { * The source type of the script. */ sourceType?: 'script' | 'module'; + + /** + * Emit design-type metadata for decorated declarations in source. + * Defaults to `false`. + */ + emitDecoratorMetadata?: boolean; } ``` diff --git a/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts b/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts index 77c03f2a2e..fa23f3492d 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts +++ b/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts @@ -47,6 +47,11 @@ interface AnalyzeOptions { * The source type of the script. */ sourceType?: 'script' | 'module'; + /** + * Emit design-type metadata for decorated declarations in source. + * Defaults to `false`. + */ + emitDecoratorMetadata?: boolean; } /** * Takes an AST and returns the analyzed scopes. diff --git a/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts.map b/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts.map index ce287b9be3..fb19e0f594 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,EAAc,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAO9C,UAAU,cAAc;IACtB;;OAEG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAEzD;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;IAEZ;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;CAClC;AAwBD;;GAEG;AACH,iBAAS,OAAO,CACd,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,eAAe,CAAC,EAAE,cAAc,GAC/B,YAAY,CA0Bd;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,EAAc,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAO9C,UAAU,cAAc;IACtB;;OAEG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAEzD;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;IAEZ;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAEjC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAyBD;;GAEG;AACH,iBAAS,OAAO,CACd,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,eAAe,CAAC,EAAE,cAAc,GAC/B,YAAY,CA6Bd;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/analyze.js b/node_modules/@typescript-eslint/scope-manager/dist/analyze.js index 611b2125f9..903cd95685 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/analyze.js +++ b/node_modules/@typescript-eslint/scope-manager/dist/analyze.js @@ -14,6 +14,7 @@ const DEFAULT_OPTIONS = { jsxFragmentName: null, lib: ['es2018'], sourceType: 'script', + emitDecoratorMetadata: false, }; function mapEcmaVersion(version) { if (version == null || version === 3 || version === 5) { @@ -27,7 +28,7 @@ function mapEcmaVersion(version) { * Takes an AST and returns the analyzed scopes. */ function analyze(tree, providedOptions) { - var _a, _b, _c, _d, _e, _f, _g, _h; + var _a, _b, _c, _d, _e, _f, _g, _h, _j; const ecmaVersion = (_a = providedOptions === null || providedOptions === void 0 ? void 0 : providedOptions.ecmaVersion) !== null && _a !== void 0 ? _a : DEFAULT_OPTIONS.ecmaVersion; const options = { childVisitorKeys: (_b = providedOptions === null || providedOptions === void 0 ? void 0 : providedOptions.childVisitorKeys) !== null && _b !== void 0 ? _b : DEFAULT_OPTIONS.childVisitorKeys, @@ -38,6 +39,7 @@ function analyze(tree, providedOptions) { jsxFragmentName: (_f = providedOptions === null || providedOptions === void 0 ? void 0 : providedOptions.jsxFragmentName) !== null && _f !== void 0 ? _f : DEFAULT_OPTIONS.jsxFragmentName, sourceType: (_g = providedOptions === null || providedOptions === void 0 ? void 0 : providedOptions.sourceType) !== null && _g !== void 0 ? _g : DEFAULT_OPTIONS.sourceType, lib: (_h = providedOptions === null || providedOptions === void 0 ? void 0 : providedOptions.lib) !== null && _h !== void 0 ? _h : [mapEcmaVersion(ecmaVersion)], + emitDecoratorMetadata: (_j = providedOptions === null || providedOptions === void 0 ? void 0 : providedOptions.emitDecoratorMetadata) !== null && _j !== void 0 ? _j : DEFAULT_OPTIONS.emitDecoratorMetadata, }; // ensure the option is lower cased options.lib = options.lib.map(l => l.toLowerCase()); diff --git a/node_modules/@typescript-eslint/scope-manager/dist/analyze.js.map b/node_modules/@typescript-eslint/scope-manager/dist/analyze.js.map index dd445117ba..0e9357be09 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/analyze.js.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/analyze.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":";;;AACA,kEAA8D;AAC9D,6CAA6D;AAC7D,iDAA8C;AAC9C,+BAA2C;AA6D3C,MAAM,eAAe,GAA6B;IAChD,gBAAgB,EAAE,0BAAW;IAC7B,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,KAAK;IACnB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,OAAO;IAClB,eAAe,EAAE,IAAI;IACrB,GAAG,EAAE,CAAC,QAAQ,CAAC;IACf,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEF,SAAS,cAAc,CAAC,OAAgC;IACtD,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE;QACrD,OAAO,KAAK,CAAC;KACd;IAED,MAAM,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;IAExB,OAAO,GAAG,IAAI,SAAW,CAAC,CAAC,CAAE,GAAW,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5E,CAAC;AAED;;GAEG;AACH,SAAS,OAAO,CACd,IAAmB,EACnB,eAAgC;;IAEhC,MAAM,WAAW,SACf,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,WAAW,mCAAI,eAAe,CAAC,WAAW,CAAC;IAC9D,MAAM,OAAO,GAA6B;QACxC,gBAAgB,QACd,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,gBAAgB,mCAAI,eAAe,CAAC,gBAAgB;QACvE,WAAW;QACX,YAAY,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,YAAY,mCAAI,eAAe,CAAC,YAAY;QAC3E,aAAa,QACX,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,aAAa,mCAAI,eAAe,CAAC,aAAa;QACjE,SAAS,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,SAAS,mCAAI,eAAe,CAAC,SAAS;QAClE,eAAe,QACb,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,eAAe,mCAAI,eAAe,CAAC,eAAe;QACrE,UAAU,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,mCAAI,eAAe,CAAC,UAAU;QACrE,GAAG,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,GAAG,mCAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC3D,CAAC;IAEF,mCAAmC;IACnC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAS,CAAC,CAAC;IAE3D,MAAM,YAAY,GAAG,IAAI,2BAAY,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAEzD,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEvB,OAAO,YAAY,CAAC;AACtB,CAAC;AAEQ,0BAAO"} \ No newline at end of file +{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":";;;AACA,kEAA8D;AAC9D,6CAA6D;AAC7D,iDAA8C;AAC9C,+BAA2C;AAmE3C,MAAM,eAAe,GAA6B;IAChD,gBAAgB,EAAE,0BAAW;IAC7B,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,KAAK;IACnB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,OAAO;IAClB,eAAe,EAAE,IAAI;IACrB,GAAG,EAAE,CAAC,QAAQ,CAAC;IACf,UAAU,EAAE,QAAQ;IACpB,qBAAqB,EAAE,KAAK;CAC7B,CAAC;AAEF,SAAS,cAAc,CAAC,OAAgC;IACtD,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE;QACrD,OAAO,KAAK,CAAC;KACd;IAED,MAAM,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;IAExB,OAAO,GAAG,IAAI,SAAW,CAAC,CAAC,CAAE,GAAW,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5E,CAAC;AAED;;GAEG;AACH,SAAS,OAAO,CACd,IAAmB,EACnB,eAAgC;;IAEhC,MAAM,WAAW,SACf,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,WAAW,mCAAI,eAAe,CAAC,WAAW,CAAC;IAC9D,MAAM,OAAO,GAA6B;QACxC,gBAAgB,QACd,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,gBAAgB,mCAAI,eAAe,CAAC,gBAAgB;QACvE,WAAW;QACX,YAAY,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,YAAY,mCAAI,eAAe,CAAC,YAAY;QAC3E,aAAa,QACX,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,aAAa,mCAAI,eAAe,CAAC,aAAa;QACjE,SAAS,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,SAAS,mCAAI,eAAe,CAAC,SAAS;QAClE,eAAe,QACb,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,eAAe,mCAAI,eAAe,CAAC,eAAe;QACrE,UAAU,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,mCAAI,eAAe,CAAC,UAAU;QACrE,GAAG,QAAE,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,GAAG,mCAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC1D,qBAAqB,QACnB,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,qBAAqB,mCACtC,eAAe,CAAC,qBAAqB;KACxC,CAAC;IAEF,mCAAmC;IACnC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAS,CAAC,CAAC;IAE3D,MAAM,YAAY,GAAG,IAAI,2BAAY,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAEzD,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEvB,OAAO,YAAY,CAAC;AACtB,CAAC;AAEQ,0BAAO"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts new file mode 100644 index 0000000000..4969cd0f3c --- /dev/null +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts @@ -0,0 +1,25 @@ +import { TSESTree } from '@typescript-eslint/types'; +import { Referencer } from './Referencer'; +import { Visitor } from './Visitor'; +declare class ClassVisitor extends Visitor { + #private; + constructor(referencer: Referencer, node: TSESTree.ClassDeclaration | TSESTree.ClassExpression, emitDecoratorMetadata: boolean); + static visit(referencer: Referencer, node: TSESTree.ClassDeclaration | TSESTree.ClassExpression, emitDecoratorMetadata: boolean): void; + visit(node: TSESTree.Node | null | undefined): void; + protected visitClass(node: TSESTree.ClassDeclaration | TSESTree.ClassExpression): void; + protected visitClassProperty(node: TSESTree.TSAbstractClassProperty | TSESTree.ClassProperty): void; + protected visitFunctionParameterTypeAnnotation(node: TSESTree.Parameter, withDecorators: boolean): void; + protected visitMethodFunction(node: TSESTree.FunctionExpression, methodNode: TSESTree.MethodDefinition): void; + protected visitProperty(node: TSESTree.ClassProperty | TSESTree.TSAbstractClassProperty | TSESTree.TSAbstractMethodDefinition): void; + protected visitMethod(node: TSESTree.MethodDefinition): void; + protected visitType(node: TSESTree.Node | null | undefined): void; + protected visitMetadataType(node: TSESTree.TSTypeAnnotation | null | undefined, withDecorators: boolean): void; + protected ClassBody(node: TSESTree.ClassBody): void; + protected ClassProperty(node: TSESTree.ClassProperty): void; + protected MethodDefinition(node: TSESTree.MethodDefinition): void; + protected TSAbstractClassProperty(node: TSESTree.TSAbstractClassProperty): void; + protected TSAbstractMethodDefinition(node: TSESTree.TSAbstractMethodDefinition): void; + protected Identifier(node: TSESTree.Identifier): void; +} +export { ClassVisitor }; +//# sourceMappingURL=ClassVisitor.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts.map new file mode 100644 index 0000000000..199701d244 --- /dev/null +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ClassVisitor.d.ts","sourceRoot":"","sources":["../../src/referencer/ClassVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,cAAM,YAAa,SAAQ,OAAO;;gBAM9B,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC,eAAe,EAC1D,qBAAqB,EAAE,OAAO;IAQhC,MAAM,CAAC,KAAK,CACV,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC,eAAe,EAC1D,qBAAqB,EAAE,OAAO,GAC7B,IAAI;IASP,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IAanD,SAAS,CAAC,UAAU,CAClB,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC,eAAe,GACzD,IAAI;IAgCP,SAAS,CAAC,kBAAkB,CAC1B,IAAI,EAAE,QAAQ,CAAC,uBAAuB,GAAG,QAAQ,CAAC,aAAa,GAC9D,IAAI;IAWP,SAAS,CAAC,oCAAoC,CAC5C,IAAI,EAAE,QAAQ,CAAC,SAAS,EACxB,cAAc,EAAE,OAAO,GACtB,IAAI;IAUP,SAAS,CAAC,mBAAmB,CAC3B,IAAI,EAAE,QAAQ,CAAC,kBAAkB,EACjC,UAAU,EAAE,QAAQ,CAAC,gBAAgB,GACpC,IAAI;IAsHP,SAAS,CAAC,aAAa,CACrB,IAAI,EACA,QAAQ,CAAC,aAAa,GACtB,QAAQ,CAAC,uBAAuB,GAChC,QAAQ,CAAC,0BAA0B,GACtC,IAAI;IAYP,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IAgB5D,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IAOjE,SAAS,CAAC,iBAAiB,CACzB,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI,GAAG,SAAS,EAClD,cAAc,EAAE,OAAO,GACtB,IAAI;IA0CP,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,GAAG,IAAI;IAMnD,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,GAAG,IAAI;IAI3D,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IAIjE,SAAS,CAAC,uBAAuB,CAC/B,IAAI,EAAE,QAAQ,CAAC,uBAAuB,GACrC,IAAI;IAIP,SAAS,CAAC,0BAA0B,CAClC,IAAI,EAAE,QAAQ,CAAC,0BAA0B,GACxC,IAAI;IAIP,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,GAAG,IAAI;CAGtD;AAsCD,OAAO,EAAE,YAAY,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js new file mode 100644 index 0000000000..012c6b77fa --- /dev/null +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js @@ -0,0 +1,300 @@ +"use strict"; +var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, privateMap, value) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to set private field on non-instance"); + } + privateMap.set(receiver, value); + return value; +}; +var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, privateMap) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to get private field on non-instance"); + } + return privateMap.get(receiver); +}; +var _classNode, _referencer, _emitDecoratorMetadata; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ClassVisitor = void 0; +const types_1 = require("@typescript-eslint/types"); +const definition_1 = require("../definition"); +const TypeVisitor_1 = require("./TypeVisitor"); +const Visitor_1 = require("./Visitor"); +class ClassVisitor extends Visitor_1.Visitor { + constructor(referencer, node, emitDecoratorMetadata) { + super(referencer); + _classNode.set(this, void 0); + _referencer.set(this, void 0); + _emitDecoratorMetadata.set(this, void 0); + __classPrivateFieldSet(this, _referencer, referencer); + __classPrivateFieldSet(this, _classNode, node); + __classPrivateFieldSet(this, _emitDecoratorMetadata, emitDecoratorMetadata); + } + static visit(referencer, node, emitDecoratorMetadata) { + const classVisitor = new ClassVisitor(referencer, node, emitDecoratorMetadata); + classVisitor.visitClass(node); + } + visit(node) { + // make sure we only handle the nodes we are designed to handle + if (node && node.type in this) { + super.visit(node); + } + else { + __classPrivateFieldGet(this, _referencer).visit(node); + } + } + /////////////////// + // Visit helpers // + /////////////////// + visitClass(node) { + var _a, _b; + if (node.type === types_1.AST_NODE_TYPES.ClassDeclaration && node.id) { + __classPrivateFieldGet(this, _referencer).currentScope() + .defineIdentifier(node.id, new definition_1.ClassNameDefinition(node.id, node)); + } + (_a = node.decorators) === null || _a === void 0 ? void 0 : _a.forEach(d => __classPrivateFieldGet(this, _referencer).visit(d)); + __classPrivateFieldGet(this, _referencer).scopeManager.nestClassScope(node); + if (node.id) { + // define the class name again inside the new scope + // references to the class should not resolve directly to the parent class + __classPrivateFieldGet(this, _referencer).currentScope() + .defineIdentifier(node.id, new definition_1.ClassNameDefinition(node.id, node)); + } + __classPrivateFieldGet(this, _referencer).visit(node.superClass); + // visit the type param declarations + this.visitType(node.typeParameters); + // then the usages + this.visitType(node.superTypeParameters); + (_b = node.implements) === null || _b === void 0 ? void 0 : _b.forEach(imp => this.visitType(imp)); + this.visit(node.body); + __classPrivateFieldGet(this, _referencer).close(node); + } + visitClassProperty(node) { + this.visitProperty(node); + /** + * class A { + * @meta // <--- check this + * foo: Type; + * } + */ + this.visitMetadataType(node.typeAnnotation, !!node.decorators); + } + visitFunctionParameterTypeAnnotation(node, withDecorators) { + if ('typeAnnotation' in node) { + this.visitMetadataType(node.typeAnnotation, withDecorators); + } + else if (node.type === types_1.AST_NODE_TYPES.AssignmentPattern) { + this.visitMetadataType(node.left.typeAnnotation, withDecorators); + } + else if (node.type === types_1.AST_NODE_TYPES.TSParameterProperty) { + this.visitFunctionParameterTypeAnnotation(node.parameter, withDecorators); + } + } + visitMethodFunction(node, methodNode) { + var _a, _b; + if (node.id) { + // FunctionExpression with name creates its special scope; + // FunctionExpressionNameScope. + __classPrivateFieldGet(this, _referencer).scopeManager.nestFunctionExpressionNameScope(node); + } + // Consider this function is in the MethodDefinition. + __classPrivateFieldGet(this, _referencer).scopeManager.nestFunctionScope(node, true); + /** + * class A { + * @meta // <--- check this + * foo(a: Type) {} + * + * @meta // <--- check this + * foo(): Type {} + * } + */ + let withMethodDecorators = !!methodNode.decorators; + /** + * class A { + * foo( + * @meta // <--- check this + * a: Type + * ) {} + * + * set foo( + * @meta // <--- EXCEPT this. TS do nothing for this + * a: Type + * ) {} + * } + */ + withMethodDecorators = + withMethodDecorators || + (methodNode.kind !== 'set' && + node.params.some(param => param.decorators)); + if (!withMethodDecorators && methodNode.kind === 'set') { + const keyName = getLiteralMethodKeyName(methodNode); + /** + * class A { + * @meta // <--- check this + * get a() {} + * set ['a'](v: Type) {} + * } + */ + if (keyName !== null && ((_a = __classPrivateFieldGet(this, _classNode).body.body.find((node) => node !== methodNode && + node.type === types_1.AST_NODE_TYPES.MethodDefinition && + // Node must both be static or not + node.static === methodNode.static && + getLiteralMethodKeyName(node) === keyName)) === null || _a === void 0 ? void 0 : _a.decorators)) { + withMethodDecorators = true; + } + } + /** + * @meta // <--- check this + * class A { + * constructor(a: Type) {} + * } + */ + if (!withMethodDecorators && + methodNode.kind === 'constructor' && + __classPrivateFieldGet(this, _classNode).decorators) { + withMethodDecorators = true; + } + // Process parameter declarations. + for (const param of node.params) { + this.visitPattern(param, (pattern, info) => { + __classPrivateFieldGet(this, _referencer).currentScope() + .defineIdentifier(pattern, new definition_1.ParameterDefinition(pattern, node, info.rest)); + __classPrivateFieldGet(this, _referencer).referencingDefaultValue(pattern, info.assignments, null, true); + }, { processRightHandNodes: true }); + this.visitFunctionParameterTypeAnnotation(param, withMethodDecorators); + (_b = param.decorators) === null || _b === void 0 ? void 0 : _b.forEach(d => this.visit(d)); + } + this.visitMetadataType(node.returnType, withMethodDecorators); + this.visitType(node.typeParameters); + // In TypeScript there are a number of function-like constructs which have no body, + // so check it exists before traversing + if (node.body) { + // Skip BlockStatement to prevent creating BlockStatement scope. + if (node.body.type === types_1.AST_NODE_TYPES.BlockStatement) { + __classPrivateFieldGet(this, _referencer).visitChildren(node.body); + } + else { + __classPrivateFieldGet(this, _referencer).visit(node.body); + } + } + __classPrivateFieldGet(this, _referencer).close(node); + } + visitProperty(node) { + var _a; + if (node.computed) { + __classPrivateFieldGet(this, _referencer).visit(node.key); + } + __classPrivateFieldGet(this, _referencer).visit(node.value); + if ('decorators' in node) { + (_a = node.decorators) === null || _a === void 0 ? void 0 : _a.forEach(d => __classPrivateFieldGet(this, _referencer).visit(d)); + } + } + visitMethod(node) { + var _a; + if (node.computed) { + __classPrivateFieldGet(this, _referencer).visit(node.key); + } + if (node.value.type === types_1.AST_NODE_TYPES.FunctionExpression) { + this.visitMethodFunction(node.value, node); + } + else { + __classPrivateFieldGet(this, _referencer).visit(node.value); + } + if ('decorators' in node) { + (_a = node.decorators) === null || _a === void 0 ? void 0 : _a.forEach(d => __classPrivateFieldGet(this, _referencer).visit(d)); + } + } + visitType(node) { + if (!node) { + return; + } + TypeVisitor_1.TypeVisitor.visit(__classPrivateFieldGet(this, _referencer), node); + } + visitMetadataType(node, withDecorators) { + if (!node) { + return; + } + // emit decorators metadata only work for TSTypeReference in ClassDeclaration + if (__classPrivateFieldGet(this, _classNode).type === types_1.AST_NODE_TYPES.ClassDeclaration && + !__classPrivateFieldGet(this, _classNode).declare && + node.typeAnnotation.type === types_1.AST_NODE_TYPES.TSTypeReference && __classPrivateFieldGet(this, _emitDecoratorMetadata)) { + let identifier; + if (node.typeAnnotation.typeName.type === types_1.AST_NODE_TYPES.TSQualifiedName) { + let iter = node.typeAnnotation.typeName; + while (iter.left.type === types_1.AST_NODE_TYPES.TSQualifiedName) { + iter = iter.left; + } + identifier = iter.left; + } + else { + identifier = node.typeAnnotation.typeName; + } + if (withDecorators) { + __classPrivateFieldGet(this, _referencer).currentScope().referenceDualValueType(identifier); + if (node.typeAnnotation.typeParameters) { + this.visitType(node.typeAnnotation.typeParameters); + } + // everything is handled now + return; + } + } + this.visitType(node); + } + ///////////////////// + // Visit selectors // + ///////////////////// + ClassBody(node) { + // this is here on purpose so that this visitor explicitly declares visitors + // for all nodes it cares about (see the instance visit method above) + this.visitChildren(node); + } + ClassProperty(node) { + this.visitClassProperty(node); + } + MethodDefinition(node) { + this.visitMethod(node); + } + TSAbstractClassProperty(node) { + this.visitClassProperty(node); + } + TSAbstractMethodDefinition(node) { + this.visitProperty(node); + } + Identifier(node) { + __classPrivateFieldGet(this, _referencer).visit(node); + } +} +exports.ClassVisitor = ClassVisitor; +_classNode = new WeakMap(), _referencer = new WeakMap(), _emitDecoratorMetadata = new WeakMap(); +/** + * Only if key is one of [identifier, string, number], ts will combine metadata of accessors . + * class A { + * get a() {} + * set ['a'](v: Type) {} + * + * get [1]() {} + * set [1](v: Type) {} + * + * // Following won't be combined + * get [key]() {} + * set [key](v: Type) {} + * + * get [true]() {} + * set [true](v: Type) {} + * + * get ['a'+'b']() {} + * set ['a'+'b']() {} + * } + */ +function getLiteralMethodKeyName(node) { + if (node.computed && node.key.type === types_1.AST_NODE_TYPES.Literal) { + if (typeof node.key.value === 'string' || + typeof node.key.value === 'number') { + return node.key.value; + } + } + else if (!node.computed && node.key.type === types_1.AST_NODE_TYPES.Identifier) { + return node.key.name; + } + return null; +} +//# sourceMappingURL=ClassVisitor.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js.map new file mode 100644 index 0000000000..8f9041fdef --- /dev/null +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ClassVisitor.js","sourceRoot":"","sources":["../../src/referencer/ClassVisitor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts index 86346bc3a9..f5b26cdaac 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts @@ -7,6 +7,7 @@ interface ReferencerOptions extends VisitorOptions { jsxPragma: string; jsxFragmentName: string | null; lib: Lib[]; + emitDecoratorMetadata: boolean; } declare class Referencer extends Visitor { #private; @@ -15,9 +16,7 @@ declare class Referencer extends Visitor { currentScope(): Scope; currentScope(throwOnNull: true): Scope | null; close(node: TSESTree.Node): void; - protected pushInnerMethodDefinition(isInnerMethodDefinition: boolean): boolean; - protected popInnerMethodDefinition(isInnerMethodDefinition: boolean | undefined): void; - protected referencingDefaultValue(pattern: TSESTree.Identifier, assignments: (TSESTree.AssignmentExpression | TSESTree.AssignmentPattern)[], maybeImplicitGlobal: ReferenceImplicitGlobal | null, init: boolean): void; + referencingDefaultValue(pattern: TSESTree.Identifier, assignments: (TSESTree.AssignmentExpression | TSESTree.AssignmentPattern)[], maybeImplicitGlobal: ReferenceImplicitGlobal | null, init: boolean): void; private populateGlobalsFromLib; /** * Searches for a variable named "name" in the upper scopes and adds a pseudo-reference from itself to itself @@ -26,11 +25,10 @@ declare class Referencer extends Visitor { private referenceJsxPragma; private referenceJsxFragment; protected visitClass(node: TSESTree.ClassDeclaration | TSESTree.ClassExpression): void; - protected visitClassProperty(node: TSESTree.TSAbstractClassProperty | TSESTree.ClassProperty): void; protected visitForIn(node: TSESTree.ForInStatement | TSESTree.ForOfStatement): void; protected visitFunctionParameterTypeAnnotation(node: TSESTree.Parameter): void; protected visitFunction(node: TSESTree.ArrowFunctionExpression | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.TSDeclareFunction | TSESTree.TSEmptyBodyFunctionExpression): void; - protected visitProperty(node: TSESTree.ClassProperty | TSESTree.MethodDefinition | TSESTree.Property | TSESTree.TSAbstractClassProperty | TSESTree.TSAbstractMethodDefinition): void; + protected visitProperty(node: TSESTree.Property): void; protected visitType(node: TSESTree.Node | null | undefined): void; protected visitTypeAssertion(node: TSESTree.TSAsExpression | TSESTree.TSTypeAssertion): void; protected ArrowFunctionExpression(node: TSESTree.ArrowFunctionExpression): void; @@ -41,7 +39,6 @@ declare class Referencer extends Visitor { protected CatchClause(node: TSESTree.CatchClause): void; protected ClassExpression(node: TSESTree.ClassExpression): void; protected ClassDeclaration(node: TSESTree.ClassDeclaration): void; - protected ClassProperty(node: TSESTree.ClassProperty): void; protected ContinueStatement(): void; protected ExportAllDeclaration(): void; protected ExportDefaultDeclaration(node: TSESTree.ExportDefaultDeclaration): void; @@ -62,14 +59,11 @@ declare class Referencer extends Visitor { protected LabeledStatement(node: TSESTree.LabeledStatement): void; protected MemberExpression(node: TSESTree.MemberExpression): void; protected MetaProperty(): void; - protected MethodDefinition(node: TSESTree.MethodDefinition): void; protected NewExpression(node: TSESTree.NewExpression): void; protected Program(node: TSESTree.Program): void; protected Property(node: TSESTree.Property): void; protected SwitchStatement(node: TSESTree.SwitchStatement): void; protected TaggedTemplateExpression(node: TSESTree.TaggedTemplateExpression): void; - protected TSAbstractClassProperty(node: TSESTree.TSAbstractClassProperty): void; - protected TSAbstractMethodDefinition(node: TSESTree.TSAbstractMethodDefinition): void; protected TSAsExpression(node: TSESTree.TSAsExpression): void; protected TSDeclareFunction(node: TSESTree.TSDeclareFunction): void; protected TSImportEqualsDeclaration(node: TSESTree.TSImportEqualsDeclaration): void; diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts.map index 9e5b3d1cb8..99291b8f97 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Referencer.d.ts","sourceRoot":"","sources":["../../src/referencer/Referencer.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Referencer.d.ts","sourceRoot":"","sources":["../../src/referencer/Referencer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js index bd6b796fdc..7dd44e9faf 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js @@ -12,10 +12,11 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function ( } return privateMap.get(receiver); }; -var _isInnerMethodDefinition, _jsxPragma, _jsxFragmentName, _hasReferencedJsxFactory, _hasReferencedJsxFragmentFactory, _lib; +var _jsxPragma, _jsxFragmentName, _hasReferencedJsxFactory, _hasReferencedJsxFragmentFactory, _lib, _emitDecoratorMetadata; Object.defineProperty(exports, "__esModule", { value: true }); exports.Referencer = void 0; const types_1 = require("@typescript-eslint/types"); +const ClassVisitor_1 = require("./ClassVisitor"); const ExportVisitor_1 = require("./ExportVisitor"); const ImportVisitor_1 = require("./ImportVisitor"); const PatternVisitor_1 = require("./PatternVisitor"); @@ -29,17 +30,17 @@ const lib_1 = require("../lib"); class Referencer extends Visitor_1.Visitor { constructor(options, scopeManager) { super(options); - _isInnerMethodDefinition.set(this, void 0); _jsxPragma.set(this, void 0); _jsxFragmentName.set(this, void 0); _hasReferencedJsxFactory.set(this, false); _hasReferencedJsxFragmentFactory.set(this, false); _lib.set(this, void 0); + _emitDecoratorMetadata.set(this, void 0); this.scopeManager = scopeManager; __classPrivateFieldSet(this, _jsxPragma, options.jsxPragma); __classPrivateFieldSet(this, _jsxFragmentName, options.jsxFragmentName); __classPrivateFieldSet(this, _lib, options.lib); - __classPrivateFieldSet(this, _isInnerMethodDefinition, false); + __classPrivateFieldSet(this, _emitDecoratorMetadata, options.emitDecoratorMetadata); } currentScope(dontThrowOnNull) { if (!dontThrowOnNull) { @@ -52,14 +53,6 @@ class Referencer extends Visitor_1.Visitor { this.scopeManager.currentScope = this.currentScope().close(this.scopeManager); } } - pushInnerMethodDefinition(isInnerMethodDefinition) { - const previous = __classPrivateFieldGet(this, _isInnerMethodDefinition); - __classPrivateFieldSet(this, _isInnerMethodDefinition, isInnerMethodDefinition); - return previous; - } - popInnerMethodDefinition(isInnerMethodDefinition) { - __classPrivateFieldSet(this, _isInnerMethodDefinition, !!isInnerMethodDefinition); - } referencingDefaultValue(pattern, assignments, maybeImplicitGlobal, init) { assignments.forEach(assignment => { this.currentScope().referenceValue(pattern, Reference_1.ReferenceFlag.Write, assignment.right, maybeImplicitGlobal, init); @@ -115,29 +108,7 @@ class Referencer extends Visitor_1.Visitor { // Visit helpers // /////////////////// visitClass(node) { - var _a, _b; - if (node.type === types_1.AST_NODE_TYPES.ClassDeclaration && node.id) { - this.currentScope().defineIdentifier(node.id, new definition_1.ClassNameDefinition(node.id, node)); - } - (_a = node.decorators) === null || _a === void 0 ? void 0 : _a.forEach(d => this.visit(d)); - this.scopeManager.nestClassScope(node); - if (node.id) { - // define the class name again inside the new scope - // references to the class should not resolve directly to the parent class - this.currentScope().defineIdentifier(node.id, new definition_1.ClassNameDefinition(node.id, node)); - } - this.visit(node.superClass); - // visit the type param declarations - this.visitType(node.typeParameters); - // then the usages - this.visitType(node.superTypeParameters); - (_b = node.implements) === null || _b === void 0 ? void 0 : _b.forEach(imp => this.visitType(imp)); - this.visit(node.body); - this.close(node); - } - visitClassProperty(node) { - this.visitProperty(node); - this.visitType(node.typeAnnotation); + ClassVisitor_1.ClassVisitor.visit(this, node, __classPrivateFieldGet(this, _emitDecoratorMetadata)); } visitForIn(node) { if (node.left.type === types_1.AST_NODE_TYPES.VariableDeclaration && @@ -196,7 +167,7 @@ class Referencer extends Visitor_1.Visitor { this.currentScope().defineIdentifier(node.id, new definition_1.FunctionNameDefinition(node.id, node)); } // Consider this function is in the MethodDefinition. - this.scopeManager.nestFunctionScope(node, __classPrivateFieldGet(this, _isInnerMethodDefinition)); + this.scopeManager.nestFunctionScope(node, false); // Process parameter declarations. for (const param of node.params) { this.visitPattern(param, (pattern, info) => { @@ -222,22 +193,10 @@ class Referencer extends Visitor_1.Visitor { this.close(node); } visitProperty(node) { - var _a; - let previous; if (node.computed) { this.visit(node.key); } - const isMethodDefinition = node.type === types_1.AST_NODE_TYPES.MethodDefinition; - if (isMethodDefinition) { - previous = this.pushInnerMethodDefinition(true); - } this.visit(node.value); - if (isMethodDefinition) { - this.popInnerMethodDefinition(previous); - } - if ('decorators' in node) { - (_a = node.decorators) === null || _a === void 0 ? void 0 : _a.forEach(d => this.visit(d)); - } } visitType(node) { if (!node) { @@ -321,9 +280,6 @@ class Referencer extends Visitor_1.Visitor { ClassDeclaration(node) { this.visitClass(node); } - ClassProperty(node) { - this.visitClassProperty(node); - } ContinueStatement() { // don't reference the continue statement's label } @@ -426,9 +382,6 @@ class Referencer extends Visitor_1.Visitor { MetaProperty() { // meta properties all builtin globals } - MethodDefinition(node) { - this.visitProperty(node); - } NewExpression(node) { this.visitChildren(node, ['typeParameters']); this.visitType(node.typeParameters); @@ -469,12 +422,6 @@ class Referencer extends Visitor_1.Visitor { this.visit(node.quasi); this.visitType(node.typeParameters); } - TSAbstractClassProperty(node) { - this.visitClassProperty(node); - } - TSAbstractMethodDefinition(node) { - this.visitProperty(node); - } TSAsExpression(node) { this.visitTypeAssertion(node); } @@ -576,5 +523,5 @@ class Referencer extends Visitor_1.Visitor { } } exports.Referencer = Referencer; -_isInnerMethodDefinition = new WeakMap(), _jsxPragma = new WeakMap(), _jsxFragmentName = new WeakMap(), _hasReferencedJsxFactory = new WeakMap(), _hasReferencedJsxFragmentFactory = new WeakMap(), _lib = new WeakMap(); +_jsxPragma = new WeakMap(), _jsxFragmentName = new WeakMap(), _hasReferencedJsxFactory = new WeakMap(), _hasReferencedJsxFragmentFactory = new WeakMap(), _lib = new WeakMap(), _emitDecoratorMetadata = new WeakMap(); //# sourceMappingURL=Referencer.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js.map index 5afd9d19ee..b4f51ed756 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js.map @@ -1 +1 @@ -{"version":3,"file":"Referencer.js","sourceRoot":"","sources":["../../src/referencer/Referencer.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Referencer.js","sourceRoot":"","sources":["../../src/referencer/Referencer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts index fe358826db..39ee0d8692 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts @@ -14,6 +14,7 @@ declare class TypeVisitor extends Visitor { protected TSConstructorType(node: TSESTree.TSConstructorType): void; protected TSConstructSignatureDeclaration(node: TSESTree.TSConstructSignatureDeclaration): void; protected TSFunctionType(node: TSESTree.TSFunctionType): void; + protected TSImportType(node: TSESTree.TSImportType): void; protected TSIndexSignature(node: TSESTree.TSIndexSignature): void; protected TSInferType(node: TSESTree.TSInferType): void; protected TSInterfaceDeclaration(node: TSESTree.TSInterfaceDeclaration): void; @@ -26,6 +27,7 @@ declare class TypeVisitor extends Visitor { protected TSTypeParameter(node: TSESTree.TSTypeParameter): void; protected TSTypePredicate(node: TSESTree.TSTypePredicate): void; protected TSTypeQuery(node: TSESTree.TSTypeQuery): void; + protected TSTypeAnnotation(node: TSESTree.TSTypeAnnotation): void; } export { TypeVisitor }; //# sourceMappingURL=TypeVisitor.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map index 7003cbef82..29faa8fe62 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"TypeVisitor.d.ts","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,cAAM,WAAY,SAAQ,OAAO;;gBAGnB,UAAU,EAAE,UAAU;IAKlC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI;IAS/D,SAAS,CAAC,iBAAiB,CACzB,IAAI,EACA,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,iBAAiB,GAC1B,QAAQ,CAAC,+BAA+B,GACxC,QAAQ,CAAC,cAAc,GACvB,QAAQ,CAAC,iBAAiB,GAC7B,IAAI;IAgCP,SAAS,CAAC,gBAAgB,CACxB,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,mBAAmB,GAC9D,IAAI;IAYP,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,GAAG,IAAI;IAIrD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IAKjE,SAAS,CAAC,0BAA0B,CAClC,IAAI,EAAE,QAAQ,CAAC,0BAA0B,GACxC,IAAI;IAIP,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAanE,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAInE,SAAS,CAAC,+BAA+B,CACvC,IAAI,EAAE,QAAQ,CAAC,+BAA+B,GAC7C,IAAI;IAIP,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,cAAc,GAAG,IAAI;IAI7D,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IASjE,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;IAsCvD,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAoBP,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,GAAG,IAAI;IAOzD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAKnE,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,kBAAkB,GAAG,IAAI;IAKrE,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,mBAAmB,GAAG,IAAI;IAKvE,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAK/D,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAkBP,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAS/D,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAQ/D,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;CAWxD;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"TypeVisitor.d.ts","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,cAAM,WAAY,SAAQ,OAAO;;gBAGnB,UAAU,EAAE,UAAU;IAKlC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI;IAS/D,SAAS,CAAC,iBAAiB,CACzB,IAAI,EACA,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,iBAAiB,GAC1B,QAAQ,CAAC,+BAA+B,GACxC,QAAQ,CAAC,cAAc,GACvB,QAAQ,CAAC,iBAAiB,GAC7B,IAAI;IAgCP,SAAS,CAAC,gBAAgB,CACxB,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,mBAAmB,GAC9D,IAAI;IAYP,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,GAAG,IAAI;IAIrD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IAKjE,SAAS,CAAC,0BAA0B,CAClC,IAAI,EAAE,QAAQ,CAAC,0BAA0B,GACxC,IAAI;IAIP,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAanE,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAInE,SAAS,CAAC,+BAA+B,CACvC,IAAI,EAAE,QAAQ,CAAC,+BAA+B,GAC7C,IAAI;IAIP,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,cAAc,GAAG,IAAI;IAI7D,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,GAAG,IAAI;IAMzD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;IASjE,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;IAsCvD,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAoBP,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,GAAG,IAAI;IAOzD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,iBAAiB,GAAG,IAAI;IAKnE,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,kBAAkB,GAAG,IAAI;IAKrE,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,mBAAmB,GAAG,IAAI;IAKvE,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAK/D,SAAS,CAAC,sBAAsB,CAC9B,IAAI,EAAE,QAAQ,CAAC,sBAAsB,GACpC,IAAI;IAkBP,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAS/D,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,GAAG,IAAI;IAQ/D,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,GAAG,IAAI;IAYvD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,GAAG,IAAI;CAIlE;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js index 10b05f6fae..f8288531a0 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js @@ -93,6 +93,11 @@ class TypeVisitor extends Visitor_1.Visitor { TSFunctionType(node) { this.visitFunctionType(node); } + TSImportType(node) { + // the TS parser allows any type to be the parameter, but it's a syntax error - so we can ignore it + this.visit(node.typeParameters); + // the qualifier is just part of a standard EntityName, so it should not be visited + } TSIndexSignature(node) { for (const param of node.parameters) { if (param.type === types_1.AST_NODE_TYPES.Identifier) { @@ -205,6 +210,10 @@ class TypeVisitor extends Visitor_1.Visitor { __classPrivateFieldGet(this, _referencer).currentScope().referenceValue(expr); } } + TSTypeAnnotation(node) { + // check + this.visitChildren(node); + } } exports.TypeVisitor = TypeVisitor; _referencer = new WeakMap(); diff --git a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map index 19d692c266..80e0198daf 100644 --- a/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map +++ b/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js.map @@ -1 +1 @@ -{"version":3,"file":"TypeVisitor.js","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"TypeVisitor.js","sourceRoot":"","sources":["../../src/referencer/TypeVisitor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAoE;AAEpE,uCAAoC;AACpC,8CAAoE;AACpE,oCAAqC;AAErC,MAAM,WAAY,SAAQ,iBAAO;IAG/B,YAAY,UAAsB;QAChC,KAAK,CAAC,UAAU,CAAC,CAAC;QAHpB,8BAAiC;QAI/B,uBAAA,IAAI,eAAe,UAAU,EAAC;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAsB,EAAE,IAAmB;QACtD,MAAM,cAAc,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;QACnD,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,mBAAmB;IACnB,mBAAmB;IACnB,mBAAmB;IAET,iBAAiB,CACzB,IAK8B;QAE9B,gFAAgF;QAChF,0CAAiB,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEhC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC/B,IAAI,kBAAkB,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;gBACzC,8FAA8F;gBAC9F,0CACG,YAAY,EAAE;qBACd,gBAAgB,CACf,OAAO,EACP,IAAI,gCAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAClD,CAAC;gBAEJ,IAAI,OAAO,CAAC,cAAc,EAAE;oBAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;oBACnC,kBAAkB,GAAG,IAAI,CAAC;iBAC3B;YACH,CAAC,CAAC,CAAC;YAEH,qGAAqG;YACrG,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,IAAI,KAAK,EAAE;gBACpD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;aAClC;SACF;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE5B,0CAAiB,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,gBAAgB,CACxB,IAA+D;QAE/D,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO;SACR;QACD,4FAA4F;QAC5F,0CAAiB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,qBAAqB;IACrB,qBAAqB;IACrB,qBAAqB;IAEX,UAAU,CAAC,IAAyB;QAC5C,0CAAiB,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAES,gBAAgB,CAAC,IAA+B;QACxD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,2BAA2B;IAC7B,CAAC;IAES,0BAA0B,CAClC,IAAyC;QAEzC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,iBAAiB,CAAC,IAAgC;QAC1D,wDAAwD;QACxD,kEAAkE;QAClE,0CAAiB,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAE7D,8FAA8F;QAC9F,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;QAExC,0CAAiB,KAAK,CAAC,IAAI,CAAC,CAAC;QAE7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAES,iBAAiB,CAAC,IAAgC;QAC1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,+BAA+B,CACvC,IAA8C;QAE9C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,cAAc,CAAC,IAA6B;QACpD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,YAAY,CAAC,IAA2B;QAChD,mGAAmG;QACnG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAChC,mFAAmF;IACrF,CAAC;IAES,gBAAgB,CAAC,IAA+B;QACxD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE;YACnC,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE;gBAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;aAClC;SACF;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAES,WAAW,CAAC,IAA0B;QAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,KAAK,GAAG,0CAAiB,YAAY,EAAE,CAAC;QAE5C;;;;UAIE;QACF,IACE,KAAK,CAAC,IAAI,KAAK,iBAAS,CAAC,YAAY;YACrC,KAAK,CAAC,IAAI,KAAK,iBAAS,CAAC,UAAU,EACnC;YACA,yEAAyE;YACzE,IAAI,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC;YAC/B,OAAO,YAAY,EAAE;gBACnB,IACE,YAAY,CAAC,IAAI,KAAK,iBAAS,CAAC,YAAY;oBAC5C,YAAY,CAAC,IAAI,KAAK,iBAAS,CAAC,UAAU,EAC1C;oBACA,iCAAiC;oBACjC,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC;oBAClC,SAAS;iBACV;gBACD,IAAI,YAAY,CAAC,IAAI,KAAK,iBAAS,CAAC,eAAe,EAAE;oBACnD,KAAK,GAAG,YAAY,CAAC;oBACrB,MAAM;iBACP;gBACD,MAAM;aACP;SACF;QAED,KAAK,CAAC,gBAAgB,CACpB,aAAa,CAAC,IAAI,EAClB,IAAI,2BAAc,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CACtD,CAAC;IACJ,CAAC;IAES,sBAAsB,CAC9B,IAAqC;;QAErC,0CACG,YAAY,EAAE;aACd,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,2BAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QAEhE,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,wEAAwE;YACxE,0CAAiB,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACjC;QAED,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE;QACxC,MAAA,IAAI,CAAC,UAAU,0CAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE;QAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEtB,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,0CAAiB,KAAK,CAAC,IAAI,CAAC,CAAC;SAC9B;IACH,CAAC;IAES,YAAY,CAAC,IAA2B;QAChD,oEAAoE;QACpE,0CAAiB,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACzB,0CAAiB,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,iBAAiB,CAAC,IAAgC;QAC1D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAES,kBAAkB,CAAC,IAAiC;QAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7B,sFAAsF;IACxF,CAAC;IAES,mBAAmB,CAAC,IAAkC;QAC9D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,8EAA8E;IAChF,CAAC;IAES,sBAAsB,CAC9B,IAAqC;QAErC,0CACG,YAAY,EAAE;aACd,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,2BAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QAEhE,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,wEAAwE;YACxE,0CAAiB,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACjC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,0CAAiB,KAAK,CAAC,IAAI,CAAC,CAAC;SAC9B;IACH,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,0CACG,YAAY,EAAE;aACd,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,2BAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAEpE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAES,eAAe,CAAC,IAA8B;QACtD,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE;YACzD,0CAAiB,YAAY,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,qFAAqF;IAC3E,WAAW,CAAC,IAA0B;QAC9C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE;YACpD,0CAAiB,YAAY,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/D;aAAM;YACL,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC9B,OAAO,IAAI,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE;gBAC9C,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;aAClB;YACD,0CAAiB,YAAY,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SACtD;IACH,CAAC;IAES,gBAAgB,CAAC,IAA+B;QACxD,QAAQ;QACR,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;CACF;AAEQ,kCAAW"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/scope-manager/package.json b/node_modules/@typescript-eslint/scope-manager/package.json index fe53a1f6bc..a3ae8e3e78 100644 --- a/node_modules/@typescript-eslint/scope-manager/package.json +++ b/node_modules/@typescript-eslint/scope-manager/package.json @@ -3,13 +3,13 @@ "url": "https://github.com/typescript-eslint/typescript-eslint/issues" }, "dependencies": { - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/visitor-keys": "4.9.0" + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0" }, "description": "TypeScript scope analyser for ESLint", "devDependencies": { "@types/glob": "*", - "@typescript-eslint/typescript-estree": "4.9.0", + "@typescript-eslint/typescript-estree": "4.15.0", "glob": "*", "jest-specific-snapshot": "*", "make-dir": "*", @@ -31,7 +31,7 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "f714911944b95dd4495166b35ff7784aedac1451", + "gitHead": "964cda3d9ddf1a8b95b2f3c410af43083845e54d", "keywords": [ "eslint", "typescript", @@ -64,5 +64,5 @@ ] } }, - "version": "4.9.0" + "version": "4.15.0" } diff --git a/node_modules/@typescript-eslint/types/CHANGELOG.md b/node_modules/@typescript-eslint/types/CHANGELOG.md index 0c40832e74..e5c649412e 100644 --- a/node_modules/@typescript-eslint/types/CHANGELOG.md +++ b/node_modules/@typescript-eslint/types/CHANGELOG.md @@ -3,6 +3,86 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.2...v4.15.0) (2021-02-08) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +## [4.14.2](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.1...v4.14.2) (2021-02-01) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +## [4.14.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.0...v4.14.1) (2021-01-25) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +# [4.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.13.0...v4.14.0) (2021-01-18) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +# [4.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.12.0...v4.13.0) (2021-01-11) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +# [4.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.1...v4.12.0) (2021-01-04) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +## [4.11.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.0...v4.11.1) (2020-12-28) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +# [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + +## [4.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.0...v4.9.1) (2020-12-07) + +**Note:** Version bump only for package @typescript-eslint/types + + + + + # [4.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.8.2...v4.9.0) (2020-11-30) diff --git a/node_modules/@typescript-eslint/types/package.json b/node_modules/@typescript-eslint/types/package.json index e31b9509dd..059f914b37 100644 --- a/node_modules/@typescript-eslint/types/package.json +++ b/node_modules/@typescript-eslint/types/package.json @@ -16,7 +16,7 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "f714911944b95dd4495166b35ff7784aedac1451", + "gitHead": "964cda3d9ddf1a8b95b2f3c410af43083845e54d", "keywords": [ "eslint", "typescript", @@ -48,5 +48,5 @@ ] } }, - "version": "4.9.0" + "version": "4.15.0" } diff --git a/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md b/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md index 1e3f80e360..0271e199d1 100644 --- a/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md +++ b/node_modules/@typescript-eslint/typescript-estree/CHANGELOG.md @@ -3,6 +3,89 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.2...v4.15.0) (2021-02-08) + + +### Features + +* **typescript-estree:** improve logic used to escape string literals in jsx ([#2995](https://github.com/typescript-eslint/typescript-eslint/issues/2995)) ([3cb3aad](https://github.com/typescript-eslint/typescript-eslint/commit/3cb3aade2864bab15ed1ff8d7cd32766aa57152f)) + + + + + +## [4.14.2](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.1...v4.14.2) (2021-02-01) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +## [4.14.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.0...v4.14.1) (2021-01-25) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.13.0...v4.14.0) (2021-01-18) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.12.0...v4.13.0) (2021-01-11) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.1...v4.12.0) (2021-01-04) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +## [4.11.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.0...v4.11.1) (2020-12-28) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +# [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + +## [4.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.0...v4.9.1) (2020-12-07) + +**Note:** Version bump only for package @typescript-eslint/typescript-estree + + + + + # [4.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.8.2...v4.9.0) (2020-11-30) diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map index 95ecf6477e..35246e1c45 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAkBL,OAAO,EAGR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAEL,QAAQ,EACR,MAAM,EAEP,MAAM,aAAa,CAAC;AAKrB,UAAU,gBAAgB;IACxB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,cAAc,EAAE,OAAO,CAAC;IACxB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAMhD;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB;IAKzD,UAAU,IAAI,OAAO;IAOrB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS;IAkCjB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAyDlB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,oCAAoC;IAe5C;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;;;;OAKG;IACH,OAAO,CAAC,oCAAoC;IAa5C;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAe1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,sBAAsB;IA4C9B;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAmElB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAkD9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;CA8jEpB"} \ No newline at end of file +{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAmBL,OAAO,EAER,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAEL,QAAQ,EAER,MAAM,EACP,MAAM,aAAa,CAAC;AAKrB,UAAU,gBAAgB;IACxB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,cAAc,EAAE,OAAO,CAAC;IACxB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAMhD;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAS;IAE3B;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB;IAKzD,UAAU,IAAI,OAAO;IAOrB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS;IAkCjB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAyDlB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,oCAAoC;IAe5C;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;;;;OAKG;IACH,OAAO,CAAC,oCAAoC;IAa5C;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAe1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,sBAAsB;IA4C9B;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAmElB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAkD9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;CA2jEpB"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js index 093e002c38..0bc9853b5c 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js @@ -1501,19 +1501,13 @@ class Converter { } // Literals case SyntaxKind.StringLiteral: { - const result = this.createNode(node, { + return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.Literal, - raw: '', - value: '', + value: parent.kind === SyntaxKind.JsxAttribute + ? node_utils_1.unescapeStringLiteralText(node.text) + : node.text, + raw: node.getText(), }); - result.raw = this.ast.text.slice(result.range[0], result.range[1]); - if ('name' in parent && parent.name === node) { - result.value = node.text; - } - else { - result.value = node_utils_1.unescapeStringLiteralText(node.text); - } - return result; } case SyntaxKind.NumericLiteral: { return this.createNode(node, { @@ -1690,19 +1684,20 @@ class Converter { case SyntaxKind.JsxText: { const start = node.getFullStart(); const end = node.getEnd(); + const text = this.ast.text.slice(start, end); if (this.options.useJSXTextNode) { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.JSXText, - value: this.ast.text.slice(start, end), - raw: this.ast.text.slice(start, end), + value: node_utils_1.unescapeStringLiteralText(text), + raw: text, range: [start, end], }); } else { return this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.Literal, - value: this.ast.text.slice(start, end), - raw: this.ast.text.slice(start, end), + value: node_utils_1.unescapeStringLiteralText(text), + raw: text, range: [start, end], }); } diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map index 9f1b7bfc8a..e00c9f1efe 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map @@ -1 +1 @@ -{"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts new file mode 100644 index 0000000000..7953cc6fee --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts @@ -0,0 +1,2 @@ +export declare const xhtmlEntities: Record; +//# sourceMappingURL=xhtml-entities.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts.map new file mode 100644 index 0000000000..ce45e83d3d --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"xhtml-entities.d.ts","sourceRoot":"","sources":["../../src/jsx/xhtml-entities.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA8PhD,CAAC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js new file mode 100644 index 0000000000..bf58e96574 --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js @@ -0,0 +1,259 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.xhtmlEntities = void 0; +exports.xhtmlEntities = { + quot: '\u0022', + amp: '&', + apos: '\u0027', + lt: '<', + gt: '>', + nbsp: '\u00A0', + iexcl: '\u00A1', + cent: '\u00A2', + pound: '\u00A3', + curren: '\u00A4', + yen: '\u00A5', + brvbar: '\u00A6', + sect: '\u00A7', + uml: '\u00A8', + copy: '\u00A9', + ordf: '\u00AA', + laquo: '\u00AB', + not: '\u00AC', + shy: '\u00AD', + reg: '\u00AE', + macr: '\u00AF', + deg: '\u00B0', + plusmn: '\u00B1', + sup2: '\u00B2', + sup3: '\u00B3', + acute: '\u00B4', + micro: '\u00B5', + para: '\u00B6', + middot: '\u00B7', + cedil: '\u00B8', + sup1: '\u00B9', + ordm: '\u00BA', + raquo: '\u00BB', + frac14: '\u00BC', + frac12: '\u00BD', + frac34: '\u00BE', + iquest: '\u00BF', + Agrave: '\u00C0', + Aacute: '\u00C1', + Acirc: '\u00C2', + Atilde: '\u00C3', + Auml: '\u00C4', + Aring: '\u00C5', + AElig: '\u00C6', + Ccedil: '\u00C7', + Egrave: '\u00C8', + Eacute: '\u00C9', + Ecirc: '\u00CA', + Euml: '\u00CB', + Igrave: '\u00CC', + Iacute: '\u00CD', + Icirc: '\u00CE', + Iuml: '\u00CF', + ETH: '\u00D0', + Ntilde: '\u00D1', + Ograve: '\u00D2', + Oacute: '\u00D3', + Ocirc: '\u00D4', + Otilde: '\u00D5', + Ouml: '\u00D6', + times: '\u00D7', + Oslash: '\u00D8', + Ugrave: '\u00D9', + Uacute: '\u00DA', + Ucirc: '\u00DB', + Uuml: '\u00DC', + Yacute: '\u00DD', + THORN: '\u00DE', + szlig: '\u00DF', + agrave: '\u00E0', + aacute: '\u00E1', + acirc: '\u00E2', + atilde: '\u00E3', + auml: '\u00E4', + aring: '\u00E5', + aelig: '\u00E6', + ccedil: '\u00E7', + egrave: '\u00E8', + eacute: '\u00E9', + ecirc: '\u00EA', + euml: '\u00EB', + igrave: '\u00EC', + iacute: '\u00ED', + icirc: '\u00EE', + iuml: '\u00EF', + eth: '\u00F0', + ntilde: '\u00F1', + ograve: '\u00F2', + oacute: '\u00F3', + ocirc: '\u00F4', + otilde: '\u00F5', + ouml: '\u00F6', + divide: '\u00F7', + oslash: '\u00F8', + ugrave: '\u00F9', + uacute: '\u00FA', + ucirc: '\u00FB', + uuml: '\u00FC', + yacute: '\u00FD', + thorn: '\u00FE', + yuml: '\u00FF', + OElig: '\u0152', + oelig: '\u0153', + Scaron: '\u0160', + scaron: '\u0161', + Yuml: '\u0178', + fnof: '\u0192', + circ: '\u02C6', + tilde: '\u02DC', + Alpha: '\u0391', + Beta: '\u0392', + Gamma: '\u0393', + Delta: '\u0394', + Epsilon: '\u0395', + Zeta: '\u0396', + Eta: '\u0397', + Theta: '\u0398', + Iota: '\u0399', + Kappa: '\u039A', + Lambda: '\u039B', + Mu: '\u039C', + Nu: '\u039D', + Xi: '\u039E', + Omicron: '\u039F', + Pi: '\u03A0', + Rho: '\u03A1', + Sigma: '\u03A3', + Tau: '\u03A4', + Upsilon: '\u03A5', + Phi: '\u03A6', + Chi: '\u03A7', + Psi: '\u03A8', + Omega: '\u03A9', + alpha: '\u03B1', + beta: '\u03B2', + gamma: '\u03B3', + delta: '\u03B4', + epsilon: '\u03B5', + zeta: '\u03B6', + eta: '\u03B7', + theta: '\u03B8', + iota: '\u03B9', + kappa: '\u03BA', + lambda: '\u03BB', + mu: '\u03BC', + nu: '\u03BD', + xi: '\u03BE', + omicron: '\u03BF', + pi: '\u03C0', + rho: '\u03C1', + sigmaf: '\u03C2', + sigma: '\u03C3', + tau: '\u03C4', + upsilon: '\u03C5', + phi: '\u03C6', + chi: '\u03C7', + psi: '\u03C8', + omega: '\u03C9', + thetasym: '\u03D1', + upsih: '\u03D2', + piv: '\u03D6', + ensp: '\u2002', + emsp: '\u2003', + thinsp: '\u2009', + zwnj: '\u200C', + zwj: '\u200D', + lrm: '\u200E', + rlm: '\u200F', + ndash: '\u2013', + mdash: '\u2014', + lsquo: '\u2018', + rsquo: '\u2019', + sbquo: '\u201A', + ldquo: '\u201C', + rdquo: '\u201D', + bdquo: '\u201E', + dagger: '\u2020', + Dagger: '\u2021', + bull: '\u2022', + hellip: '\u2026', + permil: '\u2030', + prime: '\u2032', + Prime: '\u2033', + lsaquo: '\u2039', + rsaquo: '\u203A', + oline: '\u203E', + frasl: '\u2044', + euro: '\u20AC', + image: '\u2111', + weierp: '\u2118', + real: '\u211C', + trade: '\u2122', + alefsym: '\u2135', + larr: '\u2190', + uarr: '\u2191', + rarr: '\u2192', + darr: '\u2193', + harr: '\u2194', + crarr: '\u21B5', + lArr: '\u21D0', + uArr: '\u21D1', + rArr: '\u21D2', + dArr: '\u21D3', + hArr: '\u21D4', + forall: '\u2200', + part: '\u2202', + exist: '\u2203', + empty: '\u2205', + nabla: '\u2207', + isin: '\u2208', + notin: '\u2209', + ni: '\u220B', + prod: '\u220F', + sum: '\u2211', + minus: '\u2212', + lowast: '\u2217', + radic: '\u221A', + prop: '\u221D', + infin: '\u221E', + ang: '\u2220', + and: '\u2227', + or: '\u2228', + cap: '\u2229', + cup: '\u222A', + int: '\u222B', + there4: '\u2234', + sim: '\u223C', + cong: '\u2245', + asymp: '\u2248', + ne: '\u2260', + equiv: '\u2261', + le: '\u2264', + ge: '\u2265', + sub: '\u2282', + sup: '\u2283', + nsub: '\u2284', + sube: '\u2286', + supe: '\u2287', + oplus: '\u2295', + otimes: '\u2297', + perp: '\u22A5', + sdot: '\u22C5', + lceil: '\u2308', + rceil: '\u2309', + lfloor: '\u230A', + rfloor: '\u230B', + lang: '\u2329', + rang: '\u232A', + loz: '\u25CA', + spades: '\u2660', + clubs: '\u2663', + hearts: '\u2665', + diams: '\u2666', +}; +//# sourceMappingURL=xhtml-entities.js.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js.map new file mode 100644 index 0000000000..30c14ec78b --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js.map @@ -0,0 +1 @@ +{"version":3,"file":"xhtml-entities.js","sourceRoot":"","sources":["../../src/jsx/xhtml-entities.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map index f898a2f283..f2de350892 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"node-utils.d.ts","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"node-utils.d.ts","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js index 05c95cf2f4..2ea850d335 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js +++ b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js @@ -18,14 +18,11 @@ var __importStar = (this && this.__importStar) || function (mod) { __setModuleDefault(result, mod); return result; }; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; Object.defineProperty(exports, "__esModule", { value: true }); exports.firstDefined = exports.nodeHasTokens = exports.createError = exports.convertTokens = exports.convertToken = exports.getTokenType = exports.isChildUnwrappableOptionalChain = exports.isChainExpression = exports.isOptional = exports.isComputedProperty = exports.unescapeStringLiteralText = exports.hasJSXAncestor = exports.findFirstMatchingAncestor = exports.findNextToken = exports.getTSNodeAccessibility = exports.getDeclarationKind = exports.isJSXToken = exports.isToken = exports.getRange = exports.canContainDirective = exports.getLocFor = exports.getLineAndCharacterFor = exports.getBinaryExpressionType = exports.isJSDocComment = exports.isComment = exports.isComma = exports.getLastModifier = exports.hasModifier = exports.isESTreeClassMember = exports.getTextForTokenKind = exports.isLogicalOperator = exports.isAssignmentOperator = void 0; -const unescape_1 = __importDefault(require("lodash/unescape")); const ts = __importStar(require("typescript")); const ts_estree_1 = require("./ts-estree"); +const xhtml_entities_1 = require("./jsx/xhtml-entities"); const SyntaxKind = ts.SyntaxKind; const LOGICAL_OPERATORS = [ SyntaxKind.BarBarToken, @@ -316,7 +313,18 @@ exports.hasJSXAncestor = hasJSXAncestor; * @returns The unescaped string literal text. */ function unescapeStringLiteralText(text) { - return unescape_1.default(text); + return text.replace(/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g, entity => { + const item = entity.slice(1, -1); + if (item[0] === '#') { + const codePoint = item[1] === 'x' + ? parseInt(item.slice(2), 16) + : parseInt(item.slice(1), 10); + return codePoint > 0x10ffff // RangeError: Invalid code point + ? entity + : String.fromCodePoint(codePoint); + } + return xhtml_entities_1.xhtmlEntities[item] || entity; + }); } exports.unescapeStringLiteralText = unescapeStringLiteralText; /** diff --git a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map index 306ba36684..40dbee9604 100644 --- a/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map +++ b/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map @@ -1 +1 @@ -{"version":3,"file":"node-utils.js","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"node-utils.js","sourceRoot":"","sources":["../src/node-utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,2CAAwE;AACxE,yDAAqD;AAErD,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC;AAEjC,MAAM,iBAAiB,GAGjB;IACJ,UAAU,CAAC,WAAW;IACtB,UAAU,CAAC,uBAAuB;IAClC,UAAU,CAAC,qBAAqB;CACjC,CAAC;AAuEF;;;;GAIG;AACH,SAAgB,oBAAoB,CAClC,QAAqB;IAErB,OAAO,CACL,QAAQ,CAAC,IAAI,IAAI,UAAU,CAAC,eAAe;QAC3C,QAAQ,CAAC,IAAI,IAAI,UAAU,CAAC,cAAc,CAC3C,CAAC;AACJ,CAAC;AAPD,oDAOC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAC/B,QAAqB;IAErB,OAAQ,iBAAqC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxE,CAAC;AAJD,8CAIC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CACjC,IAAO;IAEP,OAAO,EAAE,CAAC,aAAa,CAAC,IAAI,CAEN,CAAC;AACzB,CAAC;AAND,kDAMC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,qBAAqB,CAAC;AACxD,CAAC;AAFD,kDAEC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CACzB,YAAkC,EAClC,IAAa;IAEb,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,SAAS;QAChB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM;QACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,CAChE,CAAC;AACJ,CAAC;AATD,kCASC;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,IAAa;IAC3C,OAAO,CACL,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;QACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM;QACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,IAAI,CACL,CAAC;AACJ,CAAC;AAPD,0CAOC;AAED;;;;GAIG;AACH,SAAgB,OAAO,CAAC,KAAc;IACpC,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU,CAAC;AAC9C,CAAC;AAFD,0BAEC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,IAAa;IACrC,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,uBAAuB;QAChD,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,sBAAsB,CAChD,CAAC;AACJ,CAAC;AALD,8BAKC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,YAAY,CAAC;AAC/C,CAAC;AAFD,wCAEC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB,CACrC,QAAqB;IAKrB,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE;QAClC,OAAO,0BAAc,CAAC,oBAAoB,CAAC;KAC5C;SAAM,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE;QACtC,OAAO,0BAAc,CAAC,iBAAiB,CAAC;KACzC;IACD,OAAO,0BAAc,CAAC,gBAAgB,CAAC;AACzC,CAAC;AAZD,0DAYC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CACpC,GAAW,EACX,GAAkB;IAElB,MAAM,GAAG,GAAG,GAAG,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;QAClB,MAAM,EAAE,GAAG,CAAC,SAAS;KACtB,CAAC;AACJ,CAAC;AATD,wDASC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS,CACvB,KAAa,EACb,GAAW,EACX,GAAkB;IAElB,OAAO;QACL,KAAK,EAAE,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC;QACzC,GAAG,EAAE,sBAAsB,CAAC,GAAG,EAAE,GAAG,CAAC;KACtC,CAAC;AACJ,CAAC;AATD,8BASC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CACjC,IAA+C;IAE/C,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE;QACrC,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YACxB,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;YAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;YAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;YAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;YACjC,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;YACtC,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;YACvC,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB;gBAClC,OAAO,IAAI,CAAC;YACd;gBACE,OAAO,KAAK,CAAC;SAChB;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAlBD,kDAkBC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,IAAa,EAAE,GAAkB;IACxD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7C,CAAC;AAFD,4BAEC;AAED;;;;GAIG;AACH,SAAgB,OAAO,CAAC,IAAa;IACnC,OAAO,CACL,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,SAAS,CACxE,CAAC;AACJ,CAAC;AAJD,0BAIC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,IAAa;IACtC,OAAO,CACL,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,YAAY,CAC3E,CAAC;AACJ,CAAC;AAJD,gCAIC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,IAAgC;IAEhC,IAAI,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE;QACjC,OAAO,KAAK,CAAC;KACd;IACD,IAAI,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE;QACnC,OAAO,OAAO,CAAC;KAChB;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAVD,gDAUC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CACpC,IAAa;IAEb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,IAAI,CAAC;KACb;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACzC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC9B,QAAQ,QAAQ,CAAC,IAAI,EAAE;YACrB,KAAK,UAAU,CAAC,aAAa;gBAC3B,OAAO,QAAQ,CAAC;YAClB,KAAK,UAAU,CAAC,gBAAgB;gBAC9B,OAAO,WAAW,CAAC;YACrB,KAAK,UAAU,CAAC,cAAc;gBAC5B,OAAO,SAAS,CAAC;YACnB;gBACE,MAAM;SACT;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AArBD,wDAqBC;AAED;;;;;;;GAOG;AACH,SAAgB,aAAa,CAC3B,aAA2B,EAC3B,MAAe,EACf,GAAkB;IAElB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IAEpB,SAAS,IAAI,CAAC,CAAU;QACtB,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,aAAa,CAAC,GAAG,EAAE;YAChD,qEAAqE;YACrE,OAAO,CAAC,CAAC;SACV;QACD,OAAO,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,KAAc,EAAE,EAAE;YACzD,MAAM,qBAAqB;YACzB,oDAAoD;YACpD,CAAC,KAAK,CAAC,GAAG,IAAI,aAAa,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC;gBACjE,wDAAwD;gBACxD,KAAK,CAAC,GAAG,KAAK,aAAa,CAAC,GAAG,CAAC;YAClC,OAAO,qBAAqB,IAAI,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC;gBACvD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;gBACb,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAvBD,sCAuBC;AAED;;;;;GAKG;AACH,SAAgB,yBAAyB,CACvC,IAAa,EACb,SAAqC;IAErC,OAAO,IAAI,EAAE;QACX,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;YACnB,OAAO,IAAI,CAAC;SACb;QACD,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAXD,8DAWC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,IAAa;IAC1C,OAAO,CAAC,CAAC,yBAAyB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACvD,CAAC;AAFD,wCAEC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,IAAY;IACpD,OAAO,IAAI,CAAC,OAAO,CAAC,wCAAwC,EAAE,MAAM,CAAC,EAAE;QACrE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YACnB,MAAM,SAAS,GACb,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;gBACb,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC7B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClC,OAAO,SAAS,GAAG,QAAQ,CAAC,iCAAiC;gBAC3D,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;SACrC;QACD,OAAO,8BAAa,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC;AAdD,8DAcC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,oBAAoB,CAAC;AACvD,CAAC;AAFD,gDAEC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,IAE1B;IACC,OAAO,IAAI,CAAC,aAAa;QACvB,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,UAAU,CAAC,aAAa;QACtD,CAAC,CAAC,KAAK,CAAC;AACZ,CAAC;AAND,gCAMC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,IAAmB;IAEnB,OAAO,IAAI,CAAC,IAAI,KAAK,0BAAc,CAAC,eAAe,CAAC;AACtD,CAAC;AAJD,8CAIC;AAED;;GAEG;AACH,SAAgB,+BAA+B,CAC7C,IAIwB,EACxB,KAAoB;IAEpB,IACE,iBAAiB,CAAC,KAAK,CAAC;QACxB,2EAA2E;QAC3E,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,EAC9D;QACA,OAAO,IAAI,CAAC;KACb;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAjBD,0EAiBC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAC1B,KAA8C;IAE9C,IAAI,qBAAqB,IAAI,KAAK,IAAI,KAAK,CAAC,mBAAmB,EAAE;QAC/D,IAAI,KAAK,CAAC,mBAAmB,KAAK,UAAU,CAAC,WAAW,EAAE;YACxD,OAAO,2BAAe,CAAC,IAAI,CAAC;SAC7B;aAAM,IACL,KAAK,CAAC,mBAAmB,IAAI,UAAU,CAAC,uBAAuB;YAC/D,KAAK,CAAC,mBAAmB,IAAI,UAAU,CAAC,WAAW,EACnD;YACA,OAAO,2BAAe,CAAC,UAAU,CAAC;SACnC;QACD,OAAO,2BAAe,CAAC,OAAO,CAAC;KAChC;IAED,IACE,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,YAAY;QACrC,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,sBAAsB,EAC/C;QACA,IACE,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,YAAY;YACtC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,WAAW,EACrC;YACA,OAAO,2BAAe,CAAC,OAAO,CAAC;SAChC;QAED,OAAO,2BAAe,CAAC,OAAO,CAAC;KAChC;IAED,IACE,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,gBAAgB;QACzC,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,kBAAkB,EAC3C;QACA,OAAO,2BAAe,CAAC,UAAU,CAAC;KACnC;IAED,IACE,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,6BAA6B;QACtD,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,YAAY,EACrC;QACA,OAAO,2BAAe,CAAC,QAAQ,CAAC;KACjC;IAED,QAAQ,KAAK,CAAC,IAAI,EAAE;QAClB,KAAK,UAAU,CAAC,cAAc;YAC5B,OAAO,2BAAe,CAAC,OAAO,CAAC;QAEjC,KAAK,UAAU,CAAC,OAAO;YACrB,OAAO,2BAAe,CAAC,OAAO,CAAC;QAEjC,KAAK,UAAU,CAAC,aAAa;YAC3B,mGAAmG;YACnG,2CAA2C;YAC3C,IACE,KAAK,CAAC,MAAM;gBACZ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,YAAY;oBAC5C,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU,CAAC,EAC9C;gBACA,OAAO,2BAAe,CAAC,OAAO,CAAC;aAChC;YAED,OAAO,2BAAe,CAAC,MAAM,CAAC;QAEhC,KAAK,UAAU,CAAC,wBAAwB;YACtC,OAAO,2BAAe,CAAC,iBAAiB,CAAC;QAE3C,KAAK,UAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,UAAU,CAAC,kBAAkB,CAAC;QACnC,KAAK,UAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,UAAU,CAAC,UAAU,CAAC;QAE3B,gBAAgB;QAChB,QAAQ;KACT;IAED,8DAA8D;IAC9D,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU,EAAE;QACxD,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YAC5B,OAAO,2BAAe,CAAC,aAAa,CAAC;SACtC;QAED,IACE,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,wBAAwB;YACzD,cAAc,CAAC,KAAK,CAAC,EACrB;YACA,OAAO,2BAAe,CAAC,aAAa,CAAC;SACtC;KACF;IAED,OAAO,2BAAe,CAAC,UAAU,CAAC;AACpC,CAAC;AA1FD,oCA0FC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAC1B,KAAc,EACd,GAAkB;IAElB,MAAM,KAAK,GACT,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,OAAO;QAC/B,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE;QACtB,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAEtC,IAAI,SAAS,KAAK,2BAAe,CAAC,iBAAiB,EAAE;QACnD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,KAAK;YACL,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC;YACnB,GAAG,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC;YAC/B,KAAK,EAAE;gBACL,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAC/C,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aAC/C;SACF,CAAC;KACH;SAAM;QACL,OAAO;YACL,IAAI,EAAE,SAAS;YACf,KAAK;YACL,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC;YACnB,GAAG,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC;SAChC,CAAC;KACH;AACH,CAAC;AA/BD,oCA+BC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,GAAkB;IAC9C,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC;;OAEG;IACH,SAAS,IAAI,CAAC,IAAa;QACzB,wEAAwE;QACxE,iFAAiF;QACjF,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE;YAC3C,OAAO;SACR;QAED,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,cAAc,EAAE;YAC5D,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAE1C,IAAI,SAAS,EAAE;gBACb,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACxB;SACF;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACrC;IACH,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,MAAM,CAAC;AAChB,CAAC;AAxBD,sCAwBC;AASD;;;;;GAKG;AACH,SAAgB,WAAW,CACzB,GAAkB,EAClB,KAAa,EACb,OAAe;IAEf,MAAM,GAAG,GAAG,GAAG,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;IACrD,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;QACxB,MAAM,EAAE,GAAG,CAAC,SAAS;QACrB,OAAO;KACR,CAAC;AACJ,CAAC;AAZD,kCAYC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAAC,CAAU,EAAE,GAAkB;IAC1D,6EAA6E;IAC7E,sDAAsD;IACtD,OAAO,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,cAAc;QACzC,CAAC,CAAC,8DAA8D;YAC9D,CAAC,CAAE,CAAS,CAAC,KAAK;QACpB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAPD,sCAOC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,KAA+B,EAC/B,QAAsD;IAEtD,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,OAAO,SAAS,CAAC;KAClB;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO,MAAM,CAAC;SACf;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAfD,oCAeC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js index 3595792d0e..dbbef2d8fe 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js @@ -5,12 +5,7 @@ class Comparator { return ANY } constructor (comp, options) { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) if (comp instanceof Comparator) { if (comp.loose === !!options.loose) { @@ -132,6 +127,7 @@ class Comparator { module.exports = Comparator +const parseOptions = require('../internal/parse-options') const {re, t} = require('../internal/re') const cmp = require('../functions/cmp') const debug = require('../internal/debug') diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js index 83f8967717..aa04f6bff9 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js @@ -1,12 +1,7 @@ // hoisted class for cyclic dependency class Range { constructor (range, options) { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) if (range instanceof Range) { if ( @@ -46,6 +41,24 @@ class Range { throw new TypeError(`Invalid SemVer Range: ${range}`) } + // if we have any that are not the null set, throw out null sets. + if (this.set.length > 1) { + // keep the first one, in case they're all null sets + const first = this.set[0] + this.set = this.set.filter(c => !isNullSet(c[0])) + if (this.set.length === 0) + this.set = [first] + else if (this.set.length > 1) { + // if we have any that are *, then the range is just * + for (const c of this.set) { + if (c.length === 1 && isAny(c[0])) { + this.set = [c] + break + } + } + } + } + this.format() } @@ -64,8 +77,17 @@ class Range { } parseRange (range) { - const loose = this.options.loose range = range.trim() + + // memoize range parsing for performance. + // this is a very hot path, and fully deterministic. + const memoOpts = Object.keys(this.options).join(',') + const memoKey = `parseRange:${memoOpts}:${range}` + const cached = cache.get(memoKey) + if (cached) + return cached + + const loose = this.options.loose // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4` const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE] range = range.replace(hr, hyphenReplace(this.options.includePrerelease)) @@ -87,15 +109,33 @@ class Range { // ready to be split into comparators. const compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] - return range + const rangeList = range .split(' ') .map(comp => parseComparator(comp, this.options)) .join(' ') .split(/\s+/) + // >=0.0.0 is equivalent to * .map(comp => replaceGTE0(comp, this.options)) // in loose mode, throw out any that are not valid comparators .filter(this.options.loose ? comp => !!comp.match(compRe) : () => true) .map(comp => new Comparator(comp, this.options)) + + // if any comparators are the null set, then replace with JUST null set + // if more than one comparator, remove any * comparators + // also, don't include the same comparator more than once + const l = rangeList.length + const rangeMap = new Map() + for (const comp of rangeList) { + if (isNullSet(comp)) + return [comp] + rangeMap.set(comp.value, comp) + } + if (rangeMap.size > 1 && rangeMap.has('')) + rangeMap.delete('') + + const result = [...rangeMap.values()] + cache.set(memoKey, result) + return result } intersects (range, options) { @@ -144,6 +184,10 @@ class Range { } module.exports = Range +const LRU = require('lru-cache') +const cache = new LRU({ max: 1000 }) + +const parseOptions = require('../internal/parse-options') const Comparator = require('./comparator') const debug = require('../internal/debug') const SemVer = require('./semver') @@ -155,6 +199,9 @@ const { caretTrimReplace } = require('../internal/re') +const isNullSet = c => c.value === '<0.0.0-0' +const isAny = c => c.value === '' + // take a set of comparators and determine whether there // exists a version which can satisfy it const isSatisfiable = (comparators, options) => { diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js index 73247ad2b7..ed81a7ec6c 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js @@ -2,15 +2,12 @@ const debug = require('../internal/debug') const { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants') const { re, t } = require('../internal/re') +const parseOptions = require('../internal/parse-options') const { compareIdentifiers } = require('../internal/identifiers') class SemVer { constructor (version, options) { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) + if (version instanceof SemVer) { if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) { diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js index 457fee04a9..11f20f0374 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js @@ -2,13 +2,9 @@ const {MAX_LENGTH} = require('../internal/constants') const { re, t } = require('../internal/re') const SemVer = require('../classes/semver') +const parseOptions = require('../internal/parse-options') const parse = (version, options) => { - if (!options || typeof options !== 'object') { - options = { - loose: !!options, - includePrerelease: false - } - } + options = parseOptions(options) if (version instanceof SemVer) { return version diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/parse-options.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/parse-options.js new file mode 100644 index 0000000000..42d2ebd6fa --- /dev/null +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/parse-options.js @@ -0,0 +1,11 @@ +// parse out just the options we care about so we always get a consistent +// obj with keys in a consistent order. +const opts = ['includePrerelease', 'loose', 'rtl'] +const parseOptions = options => + !options ? {} + : typeof options !== 'object' ? { loose: true } + : opts.filter(k => options[k]).reduce((options, k) => { + options[k] = true + return options + }, {}) +module.exports = parseOptions diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/package.json b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/package.json index e3b23c2fcf..a6b13def46 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/package.json +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/package.json @@ -1,6 +1,9 @@ { "bin": { - "semver": "./bin/semver.js" + "semver": "bin/semver.js" + }, + "dependencies": { + "lru-cache": "^6.0.0" }, "description": "The semantic version parser used by npm.", "devDependencies": { @@ -34,5 +37,5 @@ "check-coverage": true, "coverage-map": "map.js" }, - "version": "7.3.2" + "version": "7.3.4" } diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js index 7118d237bf..2fac412914 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js @@ -19,6 +19,7 @@ const minVersion = (range, loose) => { for (let i = 0; i < range.set.length; ++i) { const comparators = range.set[i] + let setMin = null comparators.forEach((comparator) => { // Clone to avoid manipulating the comparator's semver object. const compver = new SemVer(comparator.semver.version) @@ -33,8 +34,8 @@ const minVersion = (range, loose) => { /* fallthrough */ case '': case '>=': - if (!minver || gt(minver, compver)) { - minver = compver + if (!setMin || gt(compver, setMin)) { + setMin = compver } break case '<': @@ -46,6 +47,8 @@ const minVersion = (range, loose) => { throw new Error(`Unexpected operation: ${comparator.operator}`) } }) + if (setMin && (!minver || gt(minver, setMin))) + minver = setMin } if (minver && range.test(minver)) { diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js index e35ed1176c..2a4b0a13f9 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js @@ -32,7 +32,7 @@ const outside = (version, range, hilo, options) => { throw new TypeError('Must provide a hilo val of "<" or ">"') } - // If it satisifes the range it is not outside + // If it satisfies the range it is not outside if (satisfies(version, range, options)) { return false } diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/subset.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/subset.js index 6ae29a3c92..bb7d15fe26 100644 --- a/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/subset.js +++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/subset.js @@ -21,15 +21,18 @@ const compare = require('../functions/compare.js') // - If EQ satisfies every C, return true // - Else return false // - If GT -// - If GT is lower than any > or >= comp in C, return false +// - If GT.semver is lower than any > or >= comp in C, return false // - If GT is >=, and GT.semver does not satisfy every C, return false // - If LT -// - If LT.semver is greater than that of any > comp in C, return false +// - If LT.semver is greater than any < or <= comp in C, return false // - If LT is <=, and LT.semver does not satisfy every C, return false // - If any C is a = range, and GT or LT are set, return false // - Else return true const subset = (sub, dom, options) => { + if (sub === dom) + return true + sub = new Range(sub, options) dom = new Range(dom, options) let sawNonNull = false @@ -52,6 +55,9 @@ const subset = (sub, dom, options) => { } const simpleSubset = (sub, dom, options) => { + if (sub === dom) + return true + if (sub.length === 1 && sub[0].semver === ANY) return dom.length === 1 && dom[0].semver === ANY @@ -90,6 +96,7 @@ const simpleSubset = (sub, dom, options) => { if (!satisfies(eq, String(c), options)) return false } + return true } @@ -101,7 +108,7 @@ const simpleSubset = (sub, dom, options) => { if (gt) { if (c.operator === '>' || c.operator === '>=') { higher = higherGT(gt, c, options) - if (higher === c) + if (higher === c && higher !== gt) return false } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options)) return false @@ -109,7 +116,7 @@ const simpleSubset = (sub, dom, options) => { if (lt) { if (c.operator === '<' || c.operator === '<=') { lower = lowerLT(lt, c, options) - if (lower === c) + if (lower === c && lower !== lt) return false } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options)) return false diff --git a/node_modules/@typescript-eslint/typescript-estree/package.json b/node_modules/@typescript-eslint/typescript-estree/package.json index ed59afd09c..957ce0e08f 100644 --- a/node_modules/@typescript-eslint/typescript-estree/package.json +++ b/node_modules/@typescript-eslint/typescript-estree/package.json @@ -3,28 +3,26 @@ "url": "https://github.com/typescript-eslint/typescript-eslint/issues" }, "dependencies": { - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/visitor-keys": "4.9.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", - "lodash": "^4.17.15", "semver": "^7.3.2", "tsutils": "^3.17.1" }, "description": "A parser that converts TypeScript source code into an ESTree compatible form", "devDependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.12.7", - "@babel/types": "^7.12.6", + "@babel/code-frame": "^7.12.11", + "@babel/parser": "^7.12.15", + "@babel/types": "^7.12.12", "@types/babel__code-frame": "^7.0.2", "@types/debug": "*", "@types/glob": "*", "@types/is-glob": "^4.0.1", - "@types/lodash": "*", "@types/semver": "^7.1.0", "@types/tmp": "^0.2.0", - "@typescript-eslint/shared-fixtures": "4.9.0", + "@typescript-eslint/shared-fixtures": "4.15.0", "glob": "*", "jest-specific-snapshot": "*", "make-dir": "*", @@ -43,7 +41,7 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "f714911944b95dd4495166b35ff7784aedac1451", + "gitHead": "964cda3d9ddf1a8b95b2f3c410af43083845e54d", "keywords": [ "ast", "estree", @@ -84,5 +82,5 @@ ] } }, - "version": "4.9.0" + "version": "4.15.0" } diff --git a/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md b/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md index cac3a7bce9..aa8d304d4e 100644 --- a/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md +++ b/node_modules/@typescript-eslint/visitor-keys/CHANGELOG.md @@ -3,6 +3,86 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [4.15.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.2...v4.15.0) (2021-02-08) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +## [4.14.2](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.1...v4.14.2) (2021-02-01) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +## [4.14.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.14.0...v4.14.1) (2021-01-25) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +# [4.14.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.13.0...v4.14.0) (2021-01-18) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +# [4.13.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.12.0...v4.13.0) (2021-01-11) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +# [4.12.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.1...v4.12.0) (2021-01-04) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +## [4.11.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.11.0...v4.11.1) (2020-12-28) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +# [4.11.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.10.0...v4.11.0) (2020-12-21) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +# [4.10.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.1...v4.10.0) (2020-12-14) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + +## [4.9.1](https://github.com/typescript-eslint/typescript-eslint/compare/v4.9.0...v4.9.1) (2020-12-07) + +**Note:** Version bump only for package @typescript-eslint/visitor-keys + + + + + # [4.9.0](https://github.com/typescript-eslint/typescript-eslint/compare/v4.8.2...v4.9.0) (2020-11-30) **Note:** Version bump only for package @typescript-eslint/visitor-keys diff --git a/node_modules/@typescript-eslint/visitor-keys/package.json b/node_modules/@typescript-eslint/visitor-keys/package.json index 46b66b6520..493a07e6e4 100644 --- a/node_modules/@typescript-eslint/visitor-keys/package.json +++ b/node_modules/@typescript-eslint/visitor-keys/package.json @@ -3,7 +3,7 @@ "url": "https://github.com/typescript-eslint/typescript-eslint/issues" }, "dependencies": { - "@typescript-eslint/types": "4.9.0", + "@typescript-eslint/types": "4.15.0", "eslint-visitor-keys": "^2.0.0" }, "description": "Visitor keys used to help traverse the TypeScript-ESTree AST", @@ -23,7 +23,7 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "gitHead": "f714911944b95dd4495166b35ff7784aedac1451", + "gitHead": "964cda3d9ddf1a8b95b2f3c410af43083845e54d", "keywords": [ "eslint", "typescript", @@ -55,5 +55,5 @@ ] } }, - "version": "4.9.0" + "version": "4.15.0" } diff --git a/node_modules/tsutils/.editorconfig b/node_modules/tsutils/.editorconfig deleted file mode 100644 index 4818afd6b7..0000000000 --- a/node_modules/tsutils/.editorconfig +++ /dev/null @@ -1,12 +0,0 @@ -root = true - -[*] -end_of_line = lf -insert_final_newline = true -charset = utf-8 -indent_size = 4 -indent_style = space -trim_trailing_whitespace = true - -[*.{json,yml,md}] -indent_size = 2 diff --git a/node_modules/tsutils/.fimbullinter.yaml b/node_modules/tsutils/.fimbullinter.yaml deleted file mode 100644 index 74e903e76c..0000000000 --- a/node_modules/tsutils/.fimbullinter.yaml +++ /dev/null @@ -1,2 +0,0 @@ -exclude: - - test/rules/** diff --git a/node_modules/tsutils/.wotanrc.yaml b/node_modules/tsutils/.wotanrc.yaml deleted file mode 100644 index 46153ecb73..0000000000 --- a/node_modules/tsutils/.wotanrc.yaml +++ /dev/null @@ -1,5 +0,0 @@ -extends: wotan:recommended -rules: - # TODO enable once https://github.com/Microsoft/TypeScript/issues/24706 is resolved - no-useless-assertion: off - no-useless-predicate: off diff --git a/node_modules/tsutils/CHANGELOG.md b/node_modules/tsutils/CHANGELOG.md index 0d01e793b1..212ab3d88b 100644 --- a/node_modules/tsutils/CHANGELOG.md +++ b/node_modules/tsutils/CHANGELOG.md @@ -1,3 +1,66 @@ +# 3.20.0 + +**Features:** + +* `findImports` and `findImportLikeNodes` take an additional parameter `ignoreFileName`. The default value for this paramter is `true` to remain backwards compatible. When set to `false`, it matches the behavior of TypeScript, i.e. only looks for `require` in JavaScript files. + +**Bugfixes:** + +* `getJsDoc` for `EndOfFileToken` now returns `JSDoc` comments whose contents are usable with the type checker + +# 3.19.1 + +**Bugfixes:** + +* `getSymbolOfClassLikeDeclaration` no longer crashes on anonymous mixin classes + +# 3.19.0 + +**Features:** + +* `getSymbolOfClassLikeDeclaration` to retrieve the symbol of class declarations and expressions regardless whether they have a name or not +* `getBaseOfClassLikeDeclaration` to conventiently get the expression after `extends` +* `getBaseClassMemberOfClassElement` to look up the declaration of a class member in the base class + +**Bugfixes:** + +* `getConstructorTypeOfClassLikeDeclaration` now really returns the constructor type (the static side of the class), previously it returned the instance type +* `hasExhaustiveCaseClauses` allows additional case clauses with `null`, `undefined` and `never` + +# 3.18.0 + +**Features:** + +* Source maps for easier debugging +* JSDoc is preserved in declaration files +* Comments are presered in transpiled code +* Everything you need to handle the control flow changes of TypeScript@3.7 + * `callExpressionAffectsControlFlow` to determine whether a CallExpression affects control flow by returning `never` or `asserts` + * `hasExhaustiveCaseClauses` to determine whether a SwitchStatement's CaseClauses handle every possible value + * `endsControlFlow` and `getControlFlowEnd` take an optional `checker` parameter to recognize exhaustive SwitchStatements and control flow effects of CallExpressions +* `formatPseudoBigInt` converts TypeScript's representation of a BigInt to its literal representation as you would write it in your source code +* `getAstNodeAtPosition` similar to `getTokenAtPosition`, but only operates on AST Nodes +* `removeOptionalChainingUndefinedMarkerType` and `isOptionalChainingUndefinedMarkerType` to handle types originating in an optional chain +* `findImports` and `findImportLikeNodes`: prepare for import assertions +* `getTsCheckDirective` as new name for `getCheckJsDirective` +* `getCheckJsDirective` is now deprecated + +**Bugfixes:** + +* `getUsageDomain`: handles NamespaceExport and NamedTupleMember +* `getPropertyName`: handles parentheses and negative numeric literals, excludes RegExp literals and private identifiers +* `getSingleLateBoundPropertyNameOfPropertyName` and `getLateBoundPropertyNamesOfPropertyName`: handles private identifiers +* `hasAccessModifier`: handles JSDoc access modifier +* `hasSideEffects`: correctly determines side effects of (static) property initializers +* `isExpressionValueUsed`: handle nullish coalescing and conditional assignment operators +* `canHaveJsDoc`: aligned with upstream changes in TypeScript +* `isCompilerOptionEnabled`: + * `noUncheckedIndexedAccess` requires `strictNullChecks` + * `checkJs` implies `allowJs` + * `emitDeclarationOnly` requires `declaration` +* `isInConstContext`: handle template string interpolations +* excluded unnecessary files from npm package + # 3.17.1 **Bugfixes:** diff --git a/node_modules/tsutils/index.js b/node_modules/tsutils/index.js index 4ee8dc264b..9997f29440 100644 --- a/node_modules/tsutils/index.js +++ b/node_modules/tsutils/index.js @@ -3,3 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./typeguard"), exports); tslib_1.__exportStar(require("./util"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/index.js.map b/node_modules/tsutils/index.js.map new file mode 100644 index 0000000000..e25b41810a --- /dev/null +++ b/node_modules/tsutils/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,sDAA4B;AAC5B,iDAAuB"} \ No newline at end of file diff --git a/node_modules/tsutils/package.json b/node_modules/tsutils/package.json index d7b2267712..66821294f3 100644 --- a/node_modules/tsutils/package.json +++ b/node_modules/tsutils/package.json @@ -5,9 +5,9 @@ }, "description": "utilities for working with typescript's AST", "devDependencies": { - "@fimbul/mithotyn": "^0.17.0", - "@fimbul/valtyr": "^0.20.0", - "@fimbul/wotan": "^0.20.0", + "@fimbul/mithotyn": "^0.21.0", + "@fimbul/valtyr": "^0.22.0", + "@fimbul/wotan": "^0.22.0", "@types/chai": "^4.0.10", "@types/mocha": "^5.0.0", "@types/node": "^11.13.0", @@ -17,11 +17,12 @@ "mocha": "^6.0.2", "npm-run-all": "^4.1.2", "nyc": "^13.3.0", + "rimraf": "^3.0.2", "ts-transform-const-enum": "^0.0.1", "tslint": "^5.8.0", "tslint-consistent-codestyle": "^1.11.0", "ttypescript": "^1.5.5", - "typescript": "^3.6.0-dev.20190804" + "typescript": "4.2.0-dev.20201230" }, "engines": { "node": ">= 6" @@ -45,17 +46,18 @@ "url": "https://github.com/ajafff/tsutils" }, "scripts": { - "compile": "rm -rf {,util,typeguard,test/**}/*.js; ttsc -p .", + "compile": "ttsc -p .", "coverage": "nyc run-s test", - "github-release": "GITHUB_TOKEN=$(cat ~/github_token.txt) github-release-from-changelog", + "github-release": "node ./scripts/github-release.js", "lint": "run-p lint:*", "lint:tslint": "wotan -m @fimbul/valtyr", "lint:wotan": "wotan", - "postpublish": "git push origin master --tags; run-s github-release", + "postpublish": "git push origin master --tags && run-s github-release", + "precompile": "rimraf \"{,util,typeguard,test{,/rules}/*.{js,d.ts,js.map}\"", "prepublishOnly": "run-s verify", "report-coverage": "cat ./coverage/lcov.info | coveralls", "test": "mocha test/*Tests.js && tslint --test 'test/rules/**/tslint.json'", "verify": "run-s compile lint coverage" }, - "version": "3.17.1" + "version": "3.20.0" } diff --git a/node_modules/tsutils/typeguard/2.8/index.js b/node_modules/tsutils/typeguard/2.8/index.js index 0c381e79a0..c136547b94 100644 --- a/node_modules/tsutils/typeguard/2.8/index.js +++ b/node_modules/tsutils/typeguard/2.8/index.js @@ -3,3 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./node"), exports); tslib_1.__exportStar(require("./type"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.8/index.js.map b/node_modules/tsutils/typeguard/2.8/index.js.map new file mode 100644 index 0000000000..428303b4fa --- /dev/null +++ b/node_modules/tsutils/typeguard/2.8/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,iDAAuB"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.8/node.js b/node_modules/tsutils/typeguard/2.8/node.js index b63a09be91..3cd4fd4eb7 100644 --- a/node_modules/tsutils/typeguard/2.8/node.js +++ b/node_modules/tsutils/typeguard/2.8/node.js @@ -1,5 +1,9 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isExpressionStatement = exports.isExpression = exports.isExportSpecifier = exports.isExportDeclaration = exports.isExportAssignment = exports.isEnumMember = exports.isEnumDeclaration = exports.isEntityNameExpression = exports.isEntityName = exports.isEmptyStatement = exports.isElementAccessExpression = exports.isDoStatement = exports.isDeleteExpression = exports.isDefaultClause = exports.isDecorator = exports.isDebuggerStatement = exports.isComputedPropertyName = exports.isContinueStatement = exports.isConstructSignatureDeclaration = exports.isConstructorTypeNode = exports.isConstructorDeclaration = exports.isConditionalTypeNode = exports.isConditionalExpression = exports.isCommaListExpression = exports.isClassLikeDeclaration = exports.isClassExpression = exports.isClassDeclaration = exports.isCatchClause = exports.isCaseOrDefaultClause = exports.isCaseClause = exports.isCaseBlock = exports.isCallSignatureDeclaration = exports.isCallLikeExpression = exports.isCallExpression = exports.isBreakStatement = exports.isBreakOrContinueStatement = exports.isBooleanLiteral = exports.isBlockLike = exports.isBlock = exports.isBindingPattern = exports.isBindingElement = exports.isBinaryExpression = exports.isAwaitExpression = exports.isAssertionExpression = exports.isAsExpression = exports.isArrowFunction = exports.isArrayTypeNode = exports.isArrayLiteralExpression = exports.isArrayBindingPattern = exports.isAccessorDeclaration = void 0; +exports.isNamespaceImport = exports.isNamespaceDeclaration = exports.isNamedImports = exports.isNamedExports = exports.isModuleDeclaration = exports.isModuleBlock = exports.isMethodSignature = exports.isMethodDeclaration = exports.isMetaProperty = exports.isMappedTypeNode = exports.isLiteralTypeNode = exports.isLiteralExpression = exports.isLabeledStatement = exports.isJsxText = exports.isJsxSpreadAttribute = exports.isJsxSelfClosingElement = exports.isJsxOpeningLikeElement = exports.isJsxOpeningFragment = exports.isJsxOpeningElement = exports.isJsxFragment = exports.isJsxExpression = exports.isJsxElement = exports.isJsxClosingFragment = exports.isJsxClosingElement = exports.isJsxAttributes = exports.isJsxAttributeLike = exports.isJsxAttribute = exports.isJsDoc = exports.isIterationStatement = exports.isIntersectionTypeNode = exports.isInterfaceDeclaration = exports.isInferTypeNode = exports.isIndexSignatureDeclaration = exports.isIndexedAccessTypeNode = exports.isImportSpecifier = exports.isImportEqualsDeclaration = exports.isImportDeclaration = exports.isImportClause = exports.isIfStatement = exports.isIdentifier = exports.isGetAccessorDeclaration = exports.isFunctionTypeNode = exports.isFunctionExpression = exports.isFunctionDeclaration = exports.isForStatement = exports.isForOfStatement = exports.isForInOrOfStatement = exports.isForInStatement = exports.isExternalModuleReference = exports.isExpressionWithTypeArguments = void 0; +exports.isVariableStatement = exports.isVariableDeclaration = exports.isUnionTypeNode = exports.isTypeQueryNode = exports.isTypeReferenceNode = exports.isTypePredicateNode = exports.isTypeParameterDeclaration = exports.isTypeOperatorNode = exports.isTypeOfExpression = exports.isTypeLiteralNode = exports.isTypeAssertion = exports.isTypeAliasDeclaration = exports.isTupleTypeNode = exports.isTryStatement = exports.isThrowStatement = exports.isTextualLiteral = exports.isTemplateLiteral = exports.isTemplateExpression = exports.isTaggedTemplateExpression = exports.isSyntaxList = exports.isSwitchStatement = exports.isStringLiteral = exports.isSpreadElement = exports.isSpreadAssignment = exports.isSourceFile = exports.isSignatureDeclaration = exports.isShorthandPropertyAssignment = exports.isSetAccessorDeclaration = exports.isReturnStatement = exports.isRegularExpressionLiteral = exports.isQualifiedName = exports.isPropertySignature = exports.isPropertyDeclaration = exports.isPropertyAssignment = exports.isPropertyAccessExpression = exports.isPrefixUnaryExpression = exports.isPostfixUnaryExpression = exports.isParenthesizedTypeNode = exports.isParenthesizedExpression = exports.isParameterDeclaration = exports.isOmittedExpression = exports.isObjectLiteralExpression = exports.isObjectBindingPattern = exports.isNumericOrStringLikeLiteral = exports.isNumericLiteral = exports.isNullLiteral = exports.isNoSubstitutionTemplateLiteral = exports.isNonNullExpression = exports.isNewExpression = exports.isNamespaceExportDeclaration = void 0; +exports.isWithStatement = exports.isWhileStatement = exports.isVoidExpression = exports.isVariableDeclarationList = void 0; const ts = require("typescript"); function isAccessorDeclaration(node) { return node.kind === ts.SyntaxKind.GetAccessor || @@ -707,3 +711,4 @@ function isWithStatement(node) { return node.kind === ts.SyntaxKind.WithStatement; } exports.isWithStatement = isWithStatement; +//# sourceMappingURL=node.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.8/node.js.map b/node_modules/tsutils/typeguard/2.8/node.js.map new file mode 100644 index 0000000000..3879cd1b63 --- /dev/null +++ b/node_modules/tsutils/typeguard/2.8/node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"node.js","sourceRoot":"","sources":["node.ts"],"names":[],"mappings":";;;;;;AAAA,iCAAiC;AAEjC,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;QAC1C,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AAChD,CAAC;AAHD,sDAGC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAFD,sDAEC;AAED,SAAgB,wBAAwB,CAAC,IAAa;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC;AAC9D,CAAC;AAFD,4DAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,0CAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY;QAC3C,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC5D,CAAC;AAHD,sDAGC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,gDAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB;QAClD,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC;AACzD,CAAC;AAHD,4CAGC;AAED,SAAgB,OAAO,CAAC,IAAa;IACjC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC;AAC7C,CAAC;AAFD,0BAEC;AAED,SAAgB,WAAW,CAAC,IAAa;IACrC,OAAa,IAAK,CAAC,UAAU,KAAK,SAAS,CAAC;AAChD,CAAC;AAFD,kCAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AAC/F,CAAC;AAFD,4CAEC;AAED,SAAgB,0BAA0B,CAAC,IAAa;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc;QAC7C,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACtD,CAAC;AAHD,gEAGC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,QAAQ,IAAI,CAAC,IAAI,EAAE;QACf,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACrC,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACzC,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB;YACvC,OAAO,IAAI,CAAC;QAChB;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC;AAZD,oDAYC;AAED,SAAgB,0BAA0B,CAAC,IAAa;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,gEAEC;AAED,SAAgB,WAAW,CAAC,IAAa;IACrC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,kCAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,oCAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU;QACzC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AAClD,CAAC;AAHD,sDAGC;AAED,SAAgB,aAAa,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,gDAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB;QAC/C,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACpD,CAAC;AAHD,wDAGC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAFD,sDAEC;AAED,SAAgB,uBAAuB,CAAC,IAAa;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;AAC7D,CAAC;AAFD,0DAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,sDAEC;AAED,SAAgB,wBAAwB,CAAC,IAAa;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,4DAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,sDAEC;AAED,SAAgB,+BAA+B,CAAC,IAAa;IACzD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC1D,CAAC;AAFD,0EAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC;AAC5D,CAAC;AAFD,wDAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,WAAW,CAAC,IAAa;IACrC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,kCAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,gDAEC;AAED,SAAgB,aAAa,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,yBAAyB,CAAC,IAAa;IACnD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC/D,CAAC;AAFD,8DAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC;AAFD,oCAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU;QACzC,0BAA0B,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACpF,CAAC;AAHD,wDAGC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,oCAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,gDAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,QAAQ,IAAI,CAAC,IAAI,EAAE;QACf,KAAK,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC;QAC1C,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAChC,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;QACnC,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACpC,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;QACnC,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;QACvC,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACzC,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACpC,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;QAC3C,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAChC,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;QACtC,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAC9B,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAC9B,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACrC,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;QACtC,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACzC,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAChC,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACrC,KAAK,EAAE,CAAC,UAAU,CAAC,6BAA6B,CAAC;QACjD,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;QAC3C,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACrC,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;QAC3C,KAAK,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC;QAC1C,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACzC,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC;QAC5C,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC;QAC5C,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAChC,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC;QAC5C,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;QACtC,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAC/B,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;QAC3C,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACpC,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe;YAC9B,OAAO,IAAI,CAAC;QAChB;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC;AAlDD,oCAkDC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAFD,sDAEC;AAED,SAAgB,6BAA6B,CAAC,IAAa;IACvD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,2BAA2B,CAAC;AACnE,CAAC;AAFD,sEAEC;AAED,SAAgB,yBAAyB,CAAC,IAAa;IACnD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC/D,CAAC;AAFD,8DAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACpG,CAAC;AAFD,oDAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAFD,sDAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,gDAEC;AAED,SAAgB,wBAAwB,CAAC,IAAa;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,4DAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,oCAEC;AAED,SAAgB,aAAa,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,yBAAyB,CAAC,IAAa;IACnD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC/D,CAAC;AAFD,8DAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,uBAAuB,CAAC,IAAa;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,0DAEC;AAED,SAAgB,2BAA2B,CAAC,IAAa;IACrD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,kEAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,0CAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC;AAC5D,CAAC;AAFD,wDAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,wDAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,QAAQ,IAAI,CAAC,IAAI,EAAE;QACf,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAChC,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;YAC1B,OAAO,IAAI,CAAC;QAChB;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC;AAXD,oDAWC;AAED,SAAgB,OAAO,CAAC,IAAa;IACjC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,0BAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY;QAC3C,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AACvD,CAAC;AAHD,gDAGC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,oCAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,aAAa,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAED,SAAgB,uBAAuB,CAAC,IAAa;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB;QAChD,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;AAC1D,CAAC;AAHD,0DAGC;AAED,SAAgB,uBAAuB,CAAC,IAAa;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;AAC7D,CAAC;AAFD,0DAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAED,SAAgB,SAAS,CAAC,IAAa;IACnC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;AAC/C,CAAC;AAFD,8BAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,gDAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB;QAC5C,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACvD,CAAC;AAHD,kDAGC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,8CAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,4CAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,aAAa,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,mBAAmB,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU;QAC3C,IAAI,CAAC,IAAI,KAAK,SAAS;QACvB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;YAC5C,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5C,CAAC;AAND,wDAMC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,4BAA4B,CAAC,IAAa;IACtD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,0BAA0B,CAAC;AAClE,CAAC;AAFD,oEAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,+BAA+B,CAAC,IAAa;IACzD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,6BAA6B,CAAC;AACrE,CAAC;AAFD,0EAEC;AAED,SAAgB,aAAa,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,4BAA4B,CACxC,IAAa;IAEb,QAAQ,IAAI,CAAC,IAAI,EAAE;QACf,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,KAAK,EAAE,CAAC,UAAU,CAAC,6BAA6B;YAC5C,OAAO,IAAI,CAAC;QAChB;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC;AAXD,oEAWC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC;AAC5D,CAAC;AAFD,wDAEC;AAED,SAAgB,yBAAyB,CAAC,IAAa;IACnD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC/D,CAAC;AAFD,8DAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,wDAEC;AAED,SAAgB,yBAAyB,CAAC,IAAa;IACnD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC/D,CAAC;AAFD,8DAEC;AAED,SAAgB,uBAAuB,CAAC,IAAa;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,0DAEC;AAED,SAAgB,wBAAwB,CAAC,IAAa;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC;AAC9D,CAAC;AAFD,4DAEC;AAED,SAAgB,uBAAuB,CAAC,IAAa;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;AAC7D,CAAC;AAFD,0DAEC;AAED,SAAgB,0BAA0B,CAAC,IAAa;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC;AAChE,CAAC;AAFD,gEAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAFD,sDAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,0BAA0B,CAAC,IAAa;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC;AAChE,CAAC;AAFD,gEAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,wBAAwB,CAAC,IAAa;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,4DAEC;AAED,SAAgB,6BAA6B,CAAC,IAAa;IACvD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,2BAA2B,CAAC;AACnE,CAAC;AAFD,sEAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAa,IAAK,CAAC,UAAU,KAAK,SAAS,CAAC;AAChD,CAAC;AAFD,wDAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,oCAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,gDAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;AACvD,CAAC;AAFD,8CAEC;AAED,SAAgB,YAAY,CAAC,IAAa;IACtC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,oCAEC;AAED,SAAgB,0BAA0B,CAAC,IAAa;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC;AAChE,CAAC;AAFD,gEAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,kBAAkB;QACjD,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,6BAA6B,CAAC;AAClE,CAAC;AAHD,8CAGC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;QAC5C,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,6BAA6B,CAAC;AAClE,CAAC;AAHD,4CAGC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,wCAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,0CAEC;AAED,SAAgB,sBAAsB,CAAC,IAAa;IAChD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC;AAC5D,CAAC;AAFD,wDAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC/D,CAAC;AAFD,0CAEC;AAED,SAAgB,iBAAiB,CAAC,IAAa;IAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;AACnD,CAAC;AAFD,8CAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAFD,gDAEC;AAED,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,gDAEC;AAED,SAAgB,0BAA0B,CAAC,IAAa;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,gEAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,kDAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,kDAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,0CAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;AACjD,CAAC;AAFD,0CAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAFD,sDAEC;AAED,SAAgB,mBAAmB,CAAC,IAAa;IAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;AACzD,CAAC;AAFD,kDAEC;AAED,SAAgB,yBAAyB,CAAC,IAAa;IACnD,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;AAC/D,CAAC;AAFD,8DAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;AACtD,CAAC;AAFD,4CAEC;AAED,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.8/type.js b/node_modules/tsutils/typeguard/2.8/type.js index 01fc06ead7..615ef01286 100644 --- a/node_modules/tsutils/typeguard/2.8/type.js +++ b/node_modules/tsutils/typeguard/2.8/type.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isUniqueESSymbolType = exports.isUnionType = exports.isUnionOrIntersectionType = exports.isTypeVariable = exports.isTypeReference = exports.isTypeParameter = exports.isSubstitutionType = exports.isObjectType = exports.isLiteralType = exports.isIntersectionType = exports.isInterfaceType = exports.isInstantiableType = exports.isIndexedAccessype = exports.isIndexedAccessType = exports.isGenericType = exports.isEnumType = exports.isConditionalType = void 0; const ts = require("typescript"); function isConditionalType(type) { return (type.flags & ts.TypeFlags.Conditional) !== 0; @@ -73,3 +74,4 @@ function isUniqueESSymbolType(type) { return (type.flags & ts.TypeFlags.UniqueESSymbol) !== 0; } exports.isUniqueESSymbolType = isUniqueESSymbolType; +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.8/type.js.map b/node_modules/tsutils/typeguard/2.8/type.js.map new file mode 100644 index 0000000000..02241264cc --- /dev/null +++ b/node_modules/tsutils/typeguard/2.8/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.9/index.js b/node_modules/tsutils/typeguard/2.9/index.js index 0c381e79a0..c136547b94 100644 --- a/node_modules/tsutils/typeguard/2.9/index.js +++ b/node_modules/tsutils/typeguard/2.9/index.js @@ -3,3 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./node"), exports); tslib_1.__exportStar(require("./type"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.9/index.js.map b/node_modules/tsutils/typeguard/2.9/index.js.map new file mode 100644 index 0000000000..428303b4fa --- /dev/null +++ b/node_modules/tsutils/typeguard/2.9/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,iDAAuB"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.9/node.js b/node_modules/tsutils/typeguard/2.9/node.js index e24159778a..3c4178396f 100644 --- a/node_modules/tsutils/typeguard/2.9/node.js +++ b/node_modules/tsutils/typeguard/2.9/node.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isImportTypeNode = void 0; const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../2.8/node"), exports); const ts = require("typescript"); @@ -7,3 +8,4 @@ function isImportTypeNode(node) { return node.kind === ts.SyntaxKind.ImportType; } exports.isImportTypeNode = isImportTypeNode; +//# sourceMappingURL=node.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.9/node.js.map b/node_modules/tsutils/typeguard/2.9/node.js.map new file mode 100644 index 0000000000..e75e5be392 --- /dev/null +++ b/node_modules/tsutils/typeguard/2.9/node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"node.js","sourceRoot":"","sources":["node.ts"],"names":[],"mappings":";;;;AAAA,sDAA4B;AAE5B,iCAAiC;AAEjC,SAAgB,gBAAgB,CAAC,IAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,CAAC;AAFD,4CAEC"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.9/type.js b/node_modules/tsutils/typeguard/2.9/type.js index 9315cac2b9..bb1d9eb82a 100644 --- a/node_modules/tsutils/typeguard/2.9/type.js +++ b/node_modules/tsutils/typeguard/2.9/type.js @@ -2,3 +2,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../2.8/type"), exports); +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/2.9/type.js.map b/node_modules/tsutils/typeguard/2.9/type.js.map new file mode 100644 index 0000000000..9ea39e6a5f --- /dev/null +++ b/node_modules/tsutils/typeguard/2.9/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":";;;AAAA,sDAA4B"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.0/index.js b/node_modules/tsutils/typeguard/3.0/index.js index 0c381e79a0..c136547b94 100644 --- a/node_modules/tsutils/typeguard/3.0/index.js +++ b/node_modules/tsutils/typeguard/3.0/index.js @@ -3,3 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./node"), exports); tslib_1.__exportStar(require("./type"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.0/index.js.map b/node_modules/tsutils/typeguard/3.0/index.js.map new file mode 100644 index 0000000000..428303b4fa --- /dev/null +++ b/node_modules/tsutils/typeguard/3.0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,iDAAuB"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.0/node.js b/node_modules/tsutils/typeguard/3.0/node.js index 943bb36e8a..d1a10c561e 100644 --- a/node_modules/tsutils/typeguard/3.0/node.js +++ b/node_modules/tsutils/typeguard/3.0/node.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isSyntheticExpression = exports.isRestTypeNode = exports.isOptionalTypeNode = void 0; const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../2.9/node"), exports); const ts = require("typescript"); @@ -15,3 +16,4 @@ function isSyntheticExpression(node) { return node.kind === ts.SyntaxKind.SyntheticExpression; } exports.isSyntheticExpression = isSyntheticExpression; +//# sourceMappingURL=node.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.0/node.js.map b/node_modules/tsutils/typeguard/3.0/node.js.map new file mode 100644 index 0000000000..e74db344ea --- /dev/null +++ b/node_modules/tsutils/typeguard/3.0/node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"node.js","sourceRoot":"","sources":["node.ts"],"names":[],"mappings":";;;;AAAA,sDAA4B;AAE5B,iCAAiC;AAEjC,SAAgB,kBAAkB,CAAC,IAAa;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;AACpD,CAAC;AAFD,gDAEC;AAED,SAAgB,cAAc,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;AAChD,CAAC;AAFD,wCAEC;AAED,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC;AAC3D,CAAC;AAFD,sDAEC"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.0/type.js b/node_modules/tsutils/typeguard/3.0/type.js index 7ec876f8f4..da7bdf893c 100644 --- a/node_modules/tsutils/typeguard/3.0/type.js +++ b/node_modules/tsutils/typeguard/3.0/type.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isTupleTypeReference = exports.isTupleType = void 0; const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../2.9/type"), exports); const ts = require("typescript"); @@ -12,3 +13,4 @@ function isTupleTypeReference(type) { return type_1.isTypeReference(type) && isTupleType(type.target); } exports.isTupleTypeReference = isTupleTypeReference; +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.0/type.js.map b/node_modules/tsutils/typeguard/3.0/type.js.map new file mode 100644 index 0000000000..861e3a107d --- /dev/null +++ b/node_modules/tsutils/typeguard/3.0/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":";;;;AAAA,sDAA4B;AAE5B,iCAAiC;AACjC,sCAA8C;AAE9C,SAAgB,WAAW,CAAC,IAAa;IACrC,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,IAAoB,IAAK,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAChH,CAAC;AAFD,kCAEC;AAED,SAAgB,oBAAoB,CAAC,IAAa;IAC9C,OAAO,sBAAe,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC7D,CAAC;AAFD,oDAEC"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.2/index.js b/node_modules/tsutils/typeguard/3.2/index.js index 0c381e79a0..c136547b94 100644 --- a/node_modules/tsutils/typeguard/3.2/index.js +++ b/node_modules/tsutils/typeguard/3.2/index.js @@ -3,3 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./node"), exports); tslib_1.__exportStar(require("./type"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.2/index.js.map b/node_modules/tsutils/typeguard/3.2/index.js.map new file mode 100644 index 0000000000..428303b4fa --- /dev/null +++ b/node_modules/tsutils/typeguard/3.2/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,iDAAuB"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.2/node.js b/node_modules/tsutils/typeguard/3.2/node.js index 26e8c1a749..3374c2115b 100644 --- a/node_modules/tsutils/typeguard/3.2/node.js +++ b/node_modules/tsutils/typeguard/3.2/node.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isBigIntLiteral = void 0; const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../3.0/node"), exports); const ts = require("typescript"); @@ -7,3 +8,4 @@ function isBigIntLiteral(node) { return node.kind === ts.SyntaxKind.BigIntLiteral; } exports.isBigIntLiteral = isBigIntLiteral; +//# sourceMappingURL=node.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.2/node.js.map b/node_modules/tsutils/typeguard/3.2/node.js.map new file mode 100644 index 0000000000..2a7a15000e --- /dev/null +++ b/node_modules/tsutils/typeguard/3.2/node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"node.js","sourceRoot":"","sources":["node.ts"],"names":[],"mappings":";;;;AAAA,sDAA4B;AAE5B,iCAAiC;AAEjC,SAAgB,eAAe,CAAC,IAAa;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;AACrD,CAAC;AAFD,0CAEC"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.2/type.js b/node_modules/tsutils/typeguard/3.2/type.js index d800ef8412..c175946838 100644 --- a/node_modules/tsutils/typeguard/3.2/type.js +++ b/node_modules/tsutils/typeguard/3.2/type.js @@ -2,3 +2,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../3.0/type"), exports); +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/3.2/type.js.map b/node_modules/tsutils/typeguard/3.2/type.js.map new file mode 100644 index 0000000000..9ea39e6a5f --- /dev/null +++ b/node_modules/tsutils/typeguard/3.2/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":";;;AAAA,sDAA4B"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/index.js b/node_modules/tsutils/typeguard/index.js index 0c381e79a0..c136547b94 100644 --- a/node_modules/tsutils/typeguard/index.js +++ b/node_modules/tsutils/typeguard/index.js @@ -3,3 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./node"), exports); tslib_1.__exportStar(require("./type"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/index.js.map b/node_modules/tsutils/typeguard/index.js.map new file mode 100644 index 0000000000..428303b4fa --- /dev/null +++ b/node_modules/tsutils/typeguard/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,iDAAuB"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/next/index.js b/node_modules/tsutils/typeguard/next/index.js index 0c381e79a0..c136547b94 100644 --- a/node_modules/tsutils/typeguard/next/index.js +++ b/node_modules/tsutils/typeguard/next/index.js @@ -3,3 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./node"), exports); tslib_1.__exportStar(require("./type"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/next/index.js.map b/node_modules/tsutils/typeguard/next/index.js.map new file mode 100644 index 0000000000..428303b4fa --- /dev/null +++ b/node_modules/tsutils/typeguard/next/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,iDAAuB"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/next/node.js b/node_modules/tsutils/typeguard/next/node.js index e2c022f122..7c91f49632 100644 --- a/node_modules/tsutils/typeguard/next/node.js +++ b/node_modules/tsutils/typeguard/next/node.js @@ -2,3 +2,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../3.2/node"), exports); +//# sourceMappingURL=node.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/next/node.js.map b/node_modules/tsutils/typeguard/next/node.js.map new file mode 100644 index 0000000000..831e4e16cb --- /dev/null +++ b/node_modules/tsutils/typeguard/next/node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"node.js","sourceRoot":"","sources":["node.ts"],"names":[],"mappings":";;;AAAA,sDAA4B"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/next/type.js b/node_modules/tsutils/typeguard/next/type.js index ef88473b66..a5b97be805 100644 --- a/node_modules/tsutils/typeguard/next/type.js +++ b/node_modules/tsutils/typeguard/next/type.js @@ -2,3 +2,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("../3.2/type"), exports); +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/next/type.js.map b/node_modules/tsutils/typeguard/next/type.js.map new file mode 100644 index 0000000000..9ea39e6a5f --- /dev/null +++ b/node_modules/tsutils/typeguard/next/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":";;;AAAA,sDAA4B"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/node.js b/node_modules/tsutils/typeguard/node.js index 3d8e376089..f25ba8b27c 100644 --- a/node_modules/tsutils/typeguard/node.js +++ b/node_modules/tsutils/typeguard/node.js @@ -2,3 +2,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./3.2/node"), exports); +//# sourceMappingURL=node.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/node.js.map b/node_modules/tsutils/typeguard/node.js.map new file mode 100644 index 0000000000..e1baa6b747 --- /dev/null +++ b/node_modules/tsutils/typeguard/node.js.map @@ -0,0 +1 @@ +{"version":3,"file":"node.js","sourceRoot":"","sources":["node.ts"],"names":[],"mappings":";;;AAAA,qDAA2B"} \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/type.js b/node_modules/tsutils/typeguard/type.js index cecc6fd6c3..aa2b064653 100644 --- a/node_modules/tsutils/typeguard/type.js +++ b/node_modules/tsutils/typeguard/type.js @@ -2,3 +2,4 @@ Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); tslib_1.__exportStar(require("./3.2/type"), exports); +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/node_modules/tsutils/typeguard/type.js.map b/node_modules/tsutils/typeguard/type.js.map new file mode 100644 index 0000000000..ff69ebed07 --- /dev/null +++ b/node_modules/tsutils/typeguard/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":";;;AAAA,qDAA2B"} \ No newline at end of file diff --git a/node_modules/tsutils/util/control-flow.d.ts b/node_modules/tsutils/util/control-flow.d.ts index 528155c1b9..3359c68738 100644 --- a/node_modules/tsutils/util/control-flow.d.ts +++ b/node_modules/tsutils/util/control-flow.d.ts @@ -1,8 +1,24 @@ import * as ts from 'typescript'; -export declare function endsControlFlow(statement: ts.Statement | ts.BlockLike): boolean; -export declare type ControlFlowStatement = ts.BreakStatement | ts.ContinueStatement | ts.ReturnStatement | ts.ThrowStatement; +export declare function endsControlFlow(statement: ts.Statement | ts.BlockLike, checker?: ts.TypeChecker): boolean; +export declare type ControlFlowStatement = ts.BreakStatement | ts.ContinueStatement | ts.ReturnStatement | ts.ThrowStatement | ts.ExpressionStatement & { + expression: ts.CallExpression; +}; export interface ControlFlowEnd { + /** + * Statements that may end control flow at this statement. + * Does not contain control flow statements that jump only inside the statement, for example a `continue` inside a nested for loop. + */ readonly statements: ReadonlyArray; + /** `true` if control flow definitely ends. */ readonly end: boolean; } -export declare function getControlFlowEnd(statement: ts.Statement | ts.BlockLike): ControlFlowEnd; +export declare function getControlFlowEnd(statement: ts.Statement | ts.BlockLike, checker?: ts.TypeChecker): ControlFlowEnd; +export declare enum SignatureEffect { + Never = 1, + Asserts = 2 +} +/** + * Dermines whether a top level CallExpression has a control flow effect according to TypeScript's rules. + * This handles functions returning `never` and `asserts`. + */ +export declare function callExpressionAffectsControlFlow(node: ts.CallExpression, checker: ts.TypeChecker): SignatureEffect | undefined; diff --git a/node_modules/tsutils/util/control-flow.js b/node_modules/tsutils/util/control-flow.js index 7e83773f05..23f3300238 100644 --- a/node_modules/tsutils/util/control-flow.js +++ b/node_modules/tsutils/util/control-flow.js @@ -1,17 +1,19 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.callExpressionAffectsControlFlow = exports.SignatureEffect = exports.getControlFlowEnd = exports.endsControlFlow = void 0; const ts = require("typescript"); const node_1 = require("../typeguard/node"); -function endsControlFlow(statement) { - return getControlFlowEnd(statement).end; +const util_1 = require("./util"); +function endsControlFlow(statement, checker) { + return getControlFlowEnd(statement, checker).end; } exports.endsControlFlow = endsControlFlow; const defaultControlFlowEnd = { statements: [], end: false }; -function getControlFlowEnd(statement) { - return node_1.isBlockLike(statement) ? handleBlock(statement) : getControlFlowEndWorker(statement); +function getControlFlowEnd(statement, checker) { + return node_1.isBlockLike(statement) ? handleBlock(statement, checker) : getControlFlowEndWorker(statement, checker); } exports.getControlFlowEnd = getControlFlowEnd; -function getControlFlowEndWorker(statement) { +function getControlFlowEndWorker(statement, checker) { switch (statement.kind) { case ts.SyntaxKind.ReturnStatement: case ts.SyntaxKind.ThrowStatement: @@ -19,33 +21,37 @@ function getControlFlowEndWorker(statement) { case ts.SyntaxKind.BreakStatement: return { statements: [statement], end: true }; case ts.SyntaxKind.Block: - return handleBlock(statement); + return handleBlock(statement, checker); case ts.SyntaxKind.ForStatement: case ts.SyntaxKind.WhileStatement: - return handleForAndWhileStatement(statement); + return handleForAndWhileStatement(statement, checker); case ts.SyntaxKind.ForOfStatement: case ts.SyntaxKind.ForInStatement: - return handleForInOrOfStatement(statement); + return handleForInOrOfStatement(statement, checker); case ts.SyntaxKind.DoStatement: - return matchBreakOrContinue(getControlFlowEndWorker(statement.statement), node_1.isBreakOrContinueStatement); + return matchBreakOrContinue(getControlFlowEndWorker(statement.statement, checker), node_1.isBreakOrContinueStatement); case ts.SyntaxKind.IfStatement: - return handleIfStatement(statement); + return handleIfStatement(statement, checker); case ts.SyntaxKind.SwitchStatement: - return matchBreakOrContinue(handleSwitchStatement(statement), node_1.isBreakStatement); + return matchBreakOrContinue(handleSwitchStatement(statement, checker), node_1.isBreakStatement); case ts.SyntaxKind.TryStatement: - return handleTryStatement(statement); + return handleTryStatement(statement, checker); case ts.SyntaxKind.LabeledStatement: - return matchLabel(getControlFlowEndWorker(statement.statement), statement.label); + return matchLabel(getControlFlowEndWorker(statement.statement, checker), statement.label); case ts.SyntaxKind.WithStatement: - return getControlFlowEndWorker(statement.statement); + return getControlFlowEndWorker(statement.statement, checker); + case ts.SyntaxKind.ExpressionStatement: + if (checker === undefined) + return defaultControlFlowEnd; + return handleExpressionStatement(statement, checker); default: return defaultControlFlowEnd; } } -function handleBlock(statement) { +function handleBlock(statement, checker) { const result = { statements: [], end: false }; for (const s of statement.statements) { - const current = getControlFlowEndWorker(s); + const current = getControlFlowEndWorker(s, checker); result.statements.push(...current.statements); if (current.end) { result.end = true; @@ -54,22 +60,23 @@ function handleBlock(statement) { } return result; } -function handleForInOrOfStatement(statement) { - const end = matchBreakOrContinue(getControlFlowEndWorker(statement.statement), node_1.isBreakOrContinueStatement); - end.end = false; +function handleForInOrOfStatement(statement, checker) { + const end = matchBreakOrContinue(getControlFlowEndWorker(statement.statement, checker), node_1.isBreakOrContinueStatement); + end.end = false; // loop body is guaranteed to be executed return end; } -function handleForAndWhileStatement(statement) { +function handleForAndWhileStatement(statement, checker) { const constantCondition = statement.kind === ts.SyntaxKind.WhileStatement ? getConstantCondition(statement.expression) : statement.condition === undefined || getConstantCondition(statement.condition); if (constantCondition === false) - return defaultControlFlowEnd; - const end = matchBreakOrContinue(getControlFlowEndWorker(statement.statement), node_1.isBreakOrContinueStatement); + return defaultControlFlowEnd; // loop body is never executed + const end = matchBreakOrContinue(getControlFlowEndWorker(statement.statement, checker), node_1.isBreakOrContinueStatement); if (constantCondition === undefined) - end.end = false; + end.end = false; // can't be sure that loop body is executed at all return end; } +/** Simply detects `true` and `false` in conditions. That matches TypeScript's behavior. */ function getConstantCondition(node) { switch (node.kind) { case ts.SyntaxKind.TrueKeyword: @@ -80,28 +87,30 @@ function getConstantCondition(node) { return; } } -function handleIfStatement(node) { +function handleIfStatement(node, checker) { switch (getConstantCondition(node.expression)) { case true: - return getControlFlowEndWorker(node.thenStatement); + // else branch is never executed + return getControlFlowEndWorker(node.thenStatement, checker); case false: + // then branch is never executed return node.elseStatement === undefined ? defaultControlFlowEnd - : getControlFlowEndWorker(node.elseStatement); + : getControlFlowEndWorker(node.elseStatement, checker); } - const then = getControlFlowEndWorker(node.thenStatement); + const then = getControlFlowEndWorker(node.thenStatement, checker); if (node.elseStatement === undefined) return { statements: then.statements, end: false, }; - const elze = getControlFlowEndWorker(node.elseStatement); + const elze = getControlFlowEndWorker(node.elseStatement, checker); return { statements: [...then.statements, ...elze.statements], end: then.end && elze.end, }; } -function handleSwitchStatement(node) { +function handleSwitchStatement(node, checker) { let hasDefault = false; const result = { statements: [], @@ -110,32 +119,147 @@ function handleSwitchStatement(node) { for (const clause of node.caseBlock.clauses) { if (clause.kind === ts.SyntaxKind.DefaultClause) hasDefault = true; - const current = handleBlock(clause); + const current = handleBlock(clause, checker); result.end = current.end; result.statements.push(...current.statements); } - if (!hasDefault) - result.end = false; + result.end && (result.end = hasDefault || checker !== undefined && util_1.hasExhaustiveCaseClauses(node, checker)); return result; } -function handleTryStatement(node) { +function handleTryStatement(node, checker) { let finallyResult; if (node.finallyBlock !== undefined) { - finallyResult = handleBlock(node.finallyBlock); + finallyResult = handleBlock(node.finallyBlock, checker); + // if 'finally' always ends control flow, we are not interested in any jump statements from 'try' or 'catch' if (finallyResult.end) return finallyResult; } - const tryResult = handleBlock(node.tryBlock); + const tryResult = handleBlock(node.tryBlock, checker); if (node.catchClause === undefined) return { statements: finallyResult.statements.concat(tryResult.statements), end: tryResult.end }; - const catchResult = handleBlock(node.catchClause.block); + const catchResult = handleBlock(node.catchClause.block, checker); return { statements: tryResult.statements - .filter((s) => s.kind !== ts.SyntaxKind.ThrowStatement) + // remove all throw statements and throwing function calls from the list of control flow statements inside tryBlock + .filter((s) => s.kind !== ts.SyntaxKind.ThrowStatement && s.kind !== ts.SyntaxKind.ExpressionStatement) .concat(catchResult.statements, finallyResult === undefined ? [] : finallyResult.statements), - end: tryResult.end && catchResult.end, + end: tryResult.end && catchResult.end, // only ends control flow if try AND catch definitely end control flow }; } +/** Dotted name as TypeScript requires it for assertion signatures to affect control flow. */ +function isDottedNameWithExplicitTypeAnnotation(node, checker) { + while (true) { + switch (node.kind) { + case ts.SyntaxKind.Identifier: { + const symbol = checker.getExportSymbolOfSymbol(checker.getSymbolAtLocation(node)); + return isExplicitlyTypedSymbol(util_1.isSymbolFlagSet(symbol, ts.SymbolFlags.Alias) ? checker.getAliasedSymbol(symbol) : symbol, checker); + } + case ts.SyntaxKind.ThisKeyword: + return isExplicitlyTypedThis(node); + case ts.SyntaxKind.SuperKeyword: + return true; + case ts.SyntaxKind.PropertyAccessExpression: + if (!isExplicitlyTypedSymbol(checker.getSymbolAtLocation(node), checker)) + return false; + // falls through + case ts.SyntaxKind.ParenthesizedExpression: + node = node.expression; + continue; + default: + return false; + } + } +} +function isExplicitlyTypedSymbol(symbol, checker) { + if (symbol === undefined) + return false; + if (util_1.isSymbolFlagSet(symbol, ts.SymbolFlags.Function | ts.SymbolFlags.Method | ts.SymbolFlags.Class | ts.SymbolFlags.ValueModule)) + return true; + if (!util_1.isSymbolFlagSet(symbol, ts.SymbolFlags.Variable | ts.SymbolFlags.Property)) + return false; + if (symbol.valueDeclaration === undefined) + return false; + if (declarationHasExplicitTypeAnnotation(symbol.valueDeclaration)) + return true; + return node_1.isVariableDeclaration(symbol.valueDeclaration) && + symbol.valueDeclaration.parent.parent.kind === ts.SyntaxKind.ForOfStatement && + isDottedNameWithExplicitTypeAnnotation(symbol.valueDeclaration.parent.parent.expression, checker); +} +function declarationHasExplicitTypeAnnotation(node) { + if (ts.isJSDocPropertyLikeTag(node)) + return node.typeExpression !== undefined; + return (node_1.isVariableDeclaration(node) || + node_1.isParameterDeclaration(node) || + node_1.isPropertyDeclaration(node) || + node_1.isPropertySignature(node)) && (util_1.isNodeFlagSet(node, ts.NodeFlags.JavaScriptFile) + ? ts.getJSDocType(node) + : node.type) !== undefined; +} +function isExplicitlyTypedThis(node) { + var _a; + do { + node = node.parent; + if (node_1.isDecorator(node)) { + // `this` in decorators always resolves outside of the containing class + if (node.parent.kind === ts.SyntaxKind.Parameter && node_1.isClassLikeDeclaration(node.parent.parent.parent)) { + node = node.parent.parent.parent.parent; + } + else if (node_1.isClassLikeDeclaration(node.parent.parent)) { + node = node.parent.parent.parent; + } + else if (node_1.isClassLikeDeclaration(node.parent)) { + node = node.parent.parent; + } + } + } while (util_1.isFunctionScopeBoundary(node) !== 1 /* Function */ || node.kind === ts.SyntaxKind.ArrowFunction); + return util_1.isFunctionWithBody(node) && + (util_1.isNodeFlagSet(node, ts.NodeFlags.JavaScriptFile) + ? ((_a = ts.getJSDocThisTag(node)) === null || _a === void 0 ? void 0 : _a.typeExpression) !== undefined + : node.parameters.length !== 0 && util_1.isThisParameter(node.parameters[0]) && node.parameters[0].type !== undefined) || + node_1.isClassLikeDeclaration(node.parent); +} +var SignatureEffect; +(function (SignatureEffect) { + SignatureEffect[SignatureEffect["Never"] = 1] = "Never"; + SignatureEffect[SignatureEffect["Asserts"] = 2] = "Asserts"; +})(SignatureEffect = exports.SignatureEffect || (exports.SignatureEffect = {})); +/** + * Dermines whether a top level CallExpression has a control flow effect according to TypeScript's rules. + * This handles functions returning `never` and `asserts`. + */ +function callExpressionAffectsControlFlow(node, checker) { + var _a, _b, _c; + if (!node_1.isExpressionStatement(node.parent) || + ts.isOptionalChain(node) || + !isDottedNameWithExplicitTypeAnnotation(node.expression, checker)) + return; + const signature = checker.getResolvedSignature(node); + if ((signature === null || signature === void 0 ? void 0 : signature.declaration) === undefined) + return; + const typeNode = ts.isJSDocSignature(signature.declaration) + ? (_b = (_a = signature.declaration.type) === null || _a === void 0 ? void 0 : _a.typeExpression) === null || _b === void 0 ? void 0 : _b.type + : (_c = signature.declaration.type) !== null && _c !== void 0 ? _c : (util_1.isNodeFlagSet(signature.declaration, ts.NodeFlags.JavaScriptFile) + ? ts.getJSDocReturnType(signature.declaration) + : undefined); + if (typeNode === undefined) + return; + if (node_1.isTypePredicateNode(typeNode) && typeNode.assertsModifier !== undefined) + return 2 /* Asserts */; + return util_1.isTypeFlagSet(checker.getTypeFromTypeNode(typeNode), ts.TypeFlags.Never) ? 1 /* Never */ : undefined; +} +exports.callExpressionAffectsControlFlow = callExpressionAffectsControlFlow; +function handleExpressionStatement(node, checker) { + if (!node_1.isCallExpression(node.expression)) + return defaultControlFlowEnd; + switch (callExpressionAffectsControlFlow(node.expression, checker)) { + case 2 /* Asserts */: + return { statements: [node], end: false }; + case 1 /* Never */: + return { statements: [node], end: true }; + case undefined: + return defaultControlFlowEnd; + } +} function matchBreakOrContinue(current, pred) { const result = { statements: [], @@ -169,3 +293,4 @@ function matchLabel(current, label) { } return result; } +//# sourceMappingURL=control-flow.js.map \ No newline at end of file diff --git a/node_modules/tsutils/util/control-flow.js.map b/node_modules/tsutils/util/control-flow.js.map new file mode 100644 index 0000000000..153663ab0e --- /dev/null +++ b/node_modules/tsutils/util/control-flow.js.map @@ -0,0 +1 @@ +{"version":3,"file":"control-flow.js","sourceRoot":"","sources":["control-flow.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/tsutils/util/convert-ast.d.ts b/node_modules/tsutils/util/convert-ast.d.ts index 7e95feaf0f..d80341d3e3 100644 --- a/node_modules/tsutils/util/convert-ast.d.ts +++ b/node_modules/tsutils/util/convert-ast.d.ts @@ -1,10 +1,17 @@ import * as ts from 'typescript'; +/** Wraps an AST node. Can be used as a tree using `children` or a linked list using `next` and `skip`. */ export interface NodeWrap { + /** The real AST node. */ node: ts.Node; + /** The SyntaxKind of `node`. */ kind: ts.SyntaxKind; + /** All immediate children of `node` that would be visited by `ts.forEachChild(node, cb)`. */ children: NodeWrap[]; + /** Link to the next NodeWrap, depth-first. */ next?: NodeWrap; + /** Link to the next NodeWrap skipping all children of the current node. */ skip?: NodeWrap; + /** Link to the parent NodeWrap */ parent?: NodeWrap; } export interface WrappedAst extends NodeWrap { @@ -14,7 +21,13 @@ export interface WrappedAst extends NodeWrap { parent: undefined; } export interface ConvertedAst { + /** nodes wrapped in a data structure with useful links */ wrapped: WrappedAst; + /** depth-first array of all nodes excluding SourceFile */ flat: ReadonlyArray; } +/** + * Takes a `ts.SourceFile` and creates data structures that are easier (or more performant) to traverse. + * Note that there is only a performance gain if you can reuse these structures. It's not recommended for one-time AST walks. + */ export declare function convertAst(sourceFile: ts.SourceFile): ConvertedAst; diff --git a/node_modules/tsutils/util/convert-ast.js b/node_modules/tsutils/util/convert-ast.js index bfdb0282c1..8f2d104a7a 100644 --- a/node_modules/tsutils/util/convert-ast.js +++ b/node_modules/tsutils/util/convert-ast.js @@ -1,7 +1,12 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.convertAst = void 0; const ts = require("typescript"); const util_1 = require("./util"); +/** + * Takes a `ts.SourceFile` and creates data structures that are easier (or more performant) to traverse. + * Note that there is only a performance gain if you can reuse these structures. It's not recommended for one-time AST walks. + */ function convertAst(sourceFile) { const wrapped = { node: sourceFile, @@ -13,35 +18,62 @@ function convertAst(sourceFile) { }; const flat = []; let current = wrapped; - let previous = current; - ts.forEachChild(sourceFile, function wrap(node) { - flat.push(node); - const parent = current; - previous.next = current = { + function collectChildren(node) { + current.children.push({ node, - parent, + parent: current, kind: node.kind, children: [], next: undefined, skip: undefined, - }; - if (previous !== parent) - setSkip(previous, current); - previous = current; - parent.children.push(current); - if (util_1.isNodeKind(node.kind)) - ts.forEachChild(node, wrap); - current = parent; - }); + }); + } + const stack = []; + while (true) { + if (current.children.length === 0) { + ts.forEachChild(current.node, collectChildren); + if (current.children.length === 0) { + current = current.parent; // nothing to do here, go back to parent + } + else { + // recurse into first child + const firstChild = current.children[0]; + current.next = firstChild; + flat.push(firstChild.node); + if (util_1.isNodeKind(firstChild.kind)) + current = firstChild; + stack.push(1); // set index in stack so we know where to continue processing children + } + } + else { + const index = stack[stack.length - 1]; + if (index < current.children.length) { // handles 2nd child to the last + const currentChild = current.children[index]; + flat.push(currentChild.node); + let previous = current.children[index - 1]; + while (previous.children.length !== 0) { + previous.skip = currentChild; + previous = previous.children[previous.children.length - 1]; + } + previous.skip = previous.next = currentChild; + ++stack[stack.length - 1]; + if (util_1.isNodeKind(currentChild.kind)) + current = currentChild; // recurse into child + } + else { + // done on this node + if (stack.length === 1) + break; + // remove index from stack and go back to parent + stack.pop(); + current = current.parent; + } + } + } return { wrapped, flat, }; } exports.convertAst = convertAst; -function setSkip(node, skip) { - do { - node.skip = skip; - node = node.parent; - } while (node !== skip.parent); -} +//# sourceMappingURL=convert-ast.js.map \ No newline at end of file diff --git a/node_modules/tsutils/util/convert-ast.js.map b/node_modules/tsutils/util/convert-ast.js.map new file mode 100644 index 0000000000..983174cdc7 --- /dev/null +++ b/node_modules/tsutils/util/convert-ast.js.map @@ -0,0 +1 @@ +{"version":3,"file":"convert-ast.js","sourceRoot":"","sources":["convert-ast.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,iCAAoC;AAgCpC;;;GAGG;AACH,SAAgB,UAAU,CAAC,UAAyB;IAChD,MAAM,OAAO,GAAe;QACxB,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU;QAC9B,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAO,SAAS;QACpB,IAAI,EAAE,SAAS;KAClB,CAAC;IACF,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAa,OAAO,CAAC;IAEhC,SAAS,eAAe,CAAC,IAAa;QAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClB,IAAI;YACJ,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;SAClB,CAAC,CAAC;IACP,CAAC;IACD,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,OAAO,IAAI,EAAE;QACT,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAC/C,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC/B,OAAO,GAAG,OAAO,CAAC,MAAO,CAAC,CAAC,wCAAwC;aACtE;iBAAM;gBACH,2BAA2B;gBAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACvC,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC3B,IAAI,iBAAU,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC3B,OAAO,GAAG,UAAU,CAAC;gBACzB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,sEAAsE;aACxF;SACJ;aAAM;YACH,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACtC,IAAI,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,gCAAgC;gBACnE,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC7B,IAAI,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBAC3C,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;oBACnC,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;oBAC7B,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;iBAC9D;gBACD,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;gBAC7C,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC1B,IAAI,iBAAU,CAAC,YAAY,CAAC,IAAI,CAAC;oBAC7B,OAAO,GAAG,YAAY,CAAC,CAAC,qBAAqB;aACpD;iBAAM;gBACH,oBAAoB;gBACpB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAClB,MAAM;gBACV,gDAAgD;gBAChD,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,OAAO,GAAG,OAAO,CAAC,MAAO,CAAC;aAC7B;SACJ;KACJ;IAED,OAAO;QACH,OAAO;QACP,IAAI;KACP,CAAC;AACN,CAAC;AAlED,gCAkEC"} \ No newline at end of file diff --git a/node_modules/tsutils/util/index.js b/node_modules/tsutils/util/index.js index 2087d2a37e..099b078d98 100644 --- a/node_modules/tsutils/util/index.js +++ b/node_modules/tsutils/util/index.js @@ -6,3 +6,4 @@ tslib_1.__exportStar(require("./usage"), exports); tslib_1.__exportStar(require("./control-flow"), exports); tslib_1.__exportStar(require("./type"), exports); tslib_1.__exportStar(require("./convert-ast"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/tsutils/util/index.js.map b/node_modules/tsutils/util/index.js.map new file mode 100644 index 0000000000..aacabc0485 --- /dev/null +++ b/node_modules/tsutils/util/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,kDAAwB;AACxB,yDAA+B;AAC/B,iDAAuB;AACvB,wDAA8B"} \ No newline at end of file diff --git a/node_modules/tsutils/util/type.d.ts b/node_modules/tsutils/util/type.d.ts index f4343a4584..29cb80ebe7 100644 --- a/node_modules/tsutils/util/type.d.ts +++ b/node_modules/tsutils/util/type.d.ts @@ -2,20 +2,33 @@ import * as ts from 'typescript'; import { PropertyName } from './util'; export declare function isEmptyObjectType(type: ts.Type): type is ts.ObjectType; export declare function removeOptionalityFromType(checker: ts.TypeChecker, type: ts.Type): ts.Type; +export declare function removeOptionalChainingUndefinedMarkerType(checker: ts.TypeChecker, type: ts.Type): ts.Type; +export declare function isOptionalChainingUndefinedMarkerType(checker: ts.TypeChecker, t: ts.Type): boolean; export declare function isTypeAssignableToNumber(checker: ts.TypeChecker, type: ts.Type): boolean; export declare function isTypeAssignableToString(checker: ts.TypeChecker, type: ts.Type): boolean; export declare function getCallSignaturesOfType(type: ts.Type): ReadonlyArray; +/** Returns all types of a union type or an array containing `type` itself if it's no union type. */ export declare function unionTypeParts(type: ts.Type): ts.Type[]; +/** Returns all types of a intersection type or an array containing `type` itself if it's no intersection type. */ export declare function intersectionTypeParts(type: ts.Type): ts.Type[]; export declare function someTypePart(type: ts.Type, predicate: (t: ts.Type) => t is ts.UnionOrIntersectionType, cb: (t: ts.Type) => boolean): boolean; +/** Determines if a type thenable and can be used with `await`. */ export declare function isThenableType(checker: ts.TypeChecker, node: ts.Node, type: ts.Type): boolean; +/** Determines if a type thenable and can be used with `await`. */ export declare function isThenableType(checker: ts.TypeChecker, node: ts.Expression, type?: ts.Type): boolean; +/** Determine if a type is definitely falsy. This function doesn't unwrap union types. */ export declare function isFalsyType(type: ts.Type): boolean; +/** Determines whether the given type is a boolean literal type and matches the given boolean literal (true or false). */ export declare function isBooleanLiteralType(type: ts.Type, literal: boolean): boolean; export declare function getPropertyOfType(type: ts.Type, name: ts.__String): ts.Symbol | undefined; +/** Determines if writing to a certain property of a given type is allowed. */ export declare function isPropertyReadonlyInType(type: ts.Type, name: ts.__String, checker: ts.TypeChecker): boolean; export declare function symbolHasReadonlyDeclaration(symbol: ts.Symbol, checker: ts.TypeChecker): boolean; +/** Returns the the literal name or unique symbol name from a given type. Doesn't unwrap union types. */ export declare function getPropertyNameFromType(type: ts.Type): PropertyName | undefined; +export declare function getSymbolOfClassLikeDeclaration(node: ts.ClassLikeDeclaration, checker: ts.TypeChecker): ts.Symbol; export declare function getConstructorTypeOfClassLikeDeclaration(node: ts.ClassLikeDeclaration, checker: ts.TypeChecker): ts.Type; export declare function getInstanceTypeOfClassLikeDeclaration(node: ts.ClassLikeDeclaration, checker: ts.TypeChecker): ts.Type; export declare function getIteratorYieldResultFromIteratorResult(type: ts.Type, node: ts.Node, checker: ts.TypeChecker): ts.Type; +/** Lookup the declaration of a class member in the super class. */ +export declare function getBaseClassMemberOfClassElement(node: ts.PropertyDeclaration | ts.MethodDeclaration | ts.AccessorDeclaration, checker: ts.TypeChecker): ts.Symbol | undefined; diff --git a/node_modules/tsutils/util/type.js b/node_modules/tsutils/util/type.js index 7a530d9fd7..3a79fbd8d6 100644 --- a/node_modules/tsutils/util/type.js +++ b/node_modules/tsutils/util/type.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.getBaseClassMemberOfClassElement = exports.getIteratorYieldResultFromIteratorResult = exports.getInstanceTypeOfClassLikeDeclaration = exports.getConstructorTypeOfClassLikeDeclaration = exports.getSymbolOfClassLikeDeclaration = exports.getPropertyNameFromType = exports.symbolHasReadonlyDeclaration = exports.isPropertyReadonlyInType = exports.getPropertyOfType = exports.isBooleanLiteralType = exports.isFalsyType = exports.isThenableType = exports.someTypePart = exports.intersectionTypeParts = exports.unionTypeParts = exports.getCallSignaturesOfType = exports.isTypeAssignableToString = exports.isTypeAssignableToNumber = exports.isOptionalChainingUndefinedMarkerType = exports.removeOptionalChainingUndefinedMarkerType = exports.removeOptionalityFromType = exports.isEmptyObjectType = void 0; const ts = require("typescript"); const type_1 = require("../typeguard/type"); const util_1 = require("./util"); @@ -32,6 +33,28 @@ function containsTypeWithFlag(type, flag) { return true; return false; } +function removeOptionalChainingUndefinedMarkerType(checker, type) { + if (!type_1.isUnionType(type)) + return isOptionalChainingUndefinedMarkerType(checker, type) ? type.getNonNullableType() : type; + let flags = 0; + let containsUndefinedMarker = false; + for (const t of type.types) { + if (isOptionalChainingUndefinedMarkerType(checker, t)) { + containsUndefinedMarker = true; + } + else { + flags |= t.flags; + } + } + return containsUndefinedMarker + ? checker.getNullableType(type.getNonNullableType(), flags) + : type; +} +exports.removeOptionalChainingUndefinedMarkerType = removeOptionalChainingUndefinedMarkerType; +function isOptionalChainingUndefinedMarkerType(checker, t) { + return util_1.isTypeFlagSet(t, ts.TypeFlags.Undefined) && checker.getNullableType(t.getNonNullableType(), ts.TypeFlags.Undefined) !== t; +} +exports.isOptionalChainingUndefinedMarkerType = isOptionalChainingUndefinedMarkerType; function isTypeAssignableToNumber(checker, type) { return isTypeAssignableTo(checker, type, ts.TypeFlags.NumberLike); } @@ -56,7 +79,7 @@ function isTypeAssignableTo(checker, type, flags) { } const declaration = t.symbol.declarations[0]; if (declaration.constraint === undefined) - return true; + return true; // TODO really? return check(checker.getTypeFromTypeNode(declaration.constraint)); } if (type_1.isUnionType(t)) @@ -79,7 +102,7 @@ function getCallSignaturesOfType(type) { const sig = getCallSignaturesOfType(t); if (sig.length !== 0) { if (signatures !== undefined) - return []; + return []; // if more than one type of the intersection has call signatures, none of them is useful for inference signatures = sig; } } @@ -88,10 +111,12 @@ function getCallSignaturesOfType(type) { return type.getCallSignatures(); } exports.getCallSignaturesOfType = getCallSignaturesOfType; +/** Returns all types of a union type or an array containing `type` itself if it's no union type. */ function unionTypeParts(type) { return type_1.isUnionType(type) ? type.types : [type]; } exports.unionTypeParts = unionTypeParts; +/** Returns all types of a intersection type or an array containing `type` itself if it's no intersection type. */ function intersectionTypeParts(type) { return type_1.isIntersectionType(type) ? type.types : [type]; } @@ -117,6 +142,7 @@ exports.isThenableType = isThenableType; function isCallback(checker, param, node) { let type = checker.getApparentType(checker.getTypeOfSymbolAtLocation(param, node)); if (param.valueDeclaration.dotDotDotToken) { + // unwrap array type of rest parameter type = type.getNumberIndexType(); if (type === undefined) return false; @@ -126,6 +152,7 @@ function isCallback(checker, param, node) { return true; return false; } +/** Determine if a type is definitely falsy. This function doesn't unwrap union types. */ function isFalsyType(type) { if (type.flags & (ts.TypeFlags.Undefined | ts.TypeFlags.Null | ts.TypeFlags.Void)) return true; @@ -134,6 +161,7 @@ function isFalsyType(type) { return isBooleanLiteralType(type, false); } exports.isFalsyType = isFalsyType; +/** Determines whether the given type is a boolean literal type and matches the given boolean literal (true or false). */ function isBooleanLiteralType(type, literal) { return util_1.isTypeFlagSet(type, ts.TypeFlags.BooleanLiteral) && type.intrinsicName === (literal ? 'true' : 'false'); @@ -145,11 +173,13 @@ function getPropertyOfType(type, name) { return type.getProperties().find((s) => s.escapedName === name); } exports.getPropertyOfType = getPropertyOfType; +/** Determines if writing to a certain property of a given type is allowed. */ function isPropertyReadonlyInType(type, name, checker) { let seenProperty = false; let seenReadonlySignature = false; for (const t of unionTypeParts(type)) { if (getPropertyOfType(t, name) === undefined) { + // property is not present in this part of the union -> check for readonly index signature const index = (util_1.isNumericPropertyName(name) ? checker.getIndexInfoOfType(t, ts.IndexKind.Number) : undefined) || checker.getIndexInfoOfType(t, ts.IndexKind.String); if (index !== undefined && index.isReadonly) { @@ -182,9 +212,13 @@ function isReadonlyPropertyIntersection(type, name, checker) { case false: return false; default: + // `undefined` falls through } } - return (util_1.isSymbolFlagSet(prop, ts.SymbolFlags.ValueModule) || + return ( + // members of namespace import + util_1.isSymbolFlagSet(prop, ts.SymbolFlags.ValueModule) || + // we unwrapped every mapped type, now we can check the actual declarations symbolHasReadonlyDeclaration(prop, checker)); }); } @@ -192,6 +226,7 @@ function isReadonlyPropertyFromMappedType(type, name, checker) { if (!type_1.isObjectType(type) || !util_1.isObjectFlagSet(type, ts.ObjectFlags.Mapped)) return; const declaration = type.symbol.declarations[0]; + // well-known symbols are not affected by mapped types if (declaration.readonlyToken !== undefined && !/^__@[^@]+$/.test(name)) return declaration.readonlyToken.kind !== ts.SyntaxKind.MinusToken; return isPropertyReadonlyInType(type.modifiersType, name, checker); @@ -206,7 +241,9 @@ function symbolHasReadonlyDeclaration(symbol, checker) { (node_1.isPropertyAssignment(node) || node_1.isShorthandPropertyAssignment(node)) && util_1.isInConstContext(node.parent)); } exports.symbolHasReadonlyDeclaration = symbolHasReadonlyDeclaration; +/** Returns the the literal name or unique symbol name from a given type. Doesn't unwrap union types. */ function getPropertyNameFromType(type) { + // string or number literal. bigint is intentionally excluded if (type.flags & (ts.TypeFlags.StringLiteral | ts.TypeFlags.NumberLiteral)) { const value = String(type.value); return { displayName: value, symbolName: ts.escapeLeadingUnderscores(value) }; @@ -218,14 +255,21 @@ function getPropertyNameFromType(type) { }; } exports.getPropertyNameFromType = getPropertyNameFromType; +function getSymbolOfClassLikeDeclaration(node, checker) { + var _a; + return checker.getSymbolAtLocation((_a = node.name) !== null && _a !== void 0 ? _a : util_1.getChildOfKind(node, ts.SyntaxKind.ClassKeyword)); +} +exports.getSymbolOfClassLikeDeclaration = getSymbolOfClassLikeDeclaration; function getConstructorTypeOfClassLikeDeclaration(node, checker) { - return checker.getDeclaredTypeOfSymbol(node.name !== undefined ? checker.getSymbolAtLocation(node.name) : checker.getTypeAtLocation(node).symbol); + return node.kind === ts.SyntaxKind.ClassExpression + ? checker.getTypeAtLocation(node) + : checker.getTypeOfSymbolAtLocation(getSymbolOfClassLikeDeclaration(node, checker), node); } exports.getConstructorTypeOfClassLikeDeclaration = getConstructorTypeOfClassLikeDeclaration; function getInstanceTypeOfClassLikeDeclaration(node, checker) { return node.kind === ts.SyntaxKind.ClassDeclaration ? checker.getTypeAtLocation(node) - : checker.getTypeOfSymbolAtLocation(checker.getTypeAtLocation(node).getProperty('prototype'), node); + : checker.getDeclaredTypeOfSymbol(getSymbolOfClassLikeDeclaration(node, checker)); } exports.getInstanceTypeOfClassLikeDeclaration = getInstanceTypeOfClassLikeDeclaration; function getIteratorYieldResultFromIteratorResult(type, node, checker) { @@ -236,3 +280,20 @@ function getIteratorYieldResultFromIteratorResult(type, node, checker) { }) || type; } exports.getIteratorYieldResultFromIteratorResult = getIteratorYieldResultFromIteratorResult; +/** Lookup the declaration of a class member in the super class. */ +function getBaseClassMemberOfClassElement(node, checker) { + if (!node_1.isClassLikeDeclaration(node.parent)) + return; + const base = util_1.getBaseOfClassLikeExpression(node.parent); + if (base === undefined) + return; + const name = util_1.getSingleLateBoundPropertyNameOfPropertyName(node.name, checker); + if (name === undefined) + return; + const baseType = checker.getTypeAtLocation(util_1.hasModifier(node.modifiers, ts.SyntaxKind.StaticKeyword) + ? base.expression + : base); + return getPropertyOfType(baseType, name.symbolName); +} +exports.getBaseClassMemberOfClassElement = getBaseClassMemberOfClassElement; +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/node_modules/tsutils/util/type.js.map b/node_modules/tsutils/util/type.js.map new file mode 100644 index 0000000000..c881620771 --- /dev/null +++ b/node_modules/tsutils/util/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/tsutils/util/usage.js b/node_modules/tsutils/util/usage.js index 372d38a69f..88231ec1ae 100644 --- a/node_modules/tsutils/util/usage.js +++ b/node_modules/tsutils/util/usage.js @@ -1,5 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.collectVariableUsage = exports.getDeclarationDomain = exports.getUsageDomain = exports.UsageDomain = exports.DeclarationDomain = void 0; const util_1 = require("./util"); const ts = require("typescript"); var DeclarationDomain; @@ -19,35 +20,38 @@ var UsageDomain; UsageDomain[UsageDomain["Any"] = 7] = "Any"; UsageDomain[UsageDomain["TypeQuery"] = 8] = "TypeQuery"; })(UsageDomain = exports.UsageDomain || (exports.UsageDomain = {})); +// TODO handle cases where values are used only for their types, e.g. `declare [propSymbol]: number` function getUsageDomain(node) { const parent = node.parent; switch (parent.kind) { case ts.SyntaxKind.TypeReference: - return node.originalKeywordKind !== ts.SyntaxKind.ConstKeyword ? 2 : undefined; + return node.originalKeywordKind !== ts.SyntaxKind.ConstKeyword ? 2 /* Type */ : undefined; case ts.SyntaxKind.ExpressionWithTypeArguments: return parent.parent.token === ts.SyntaxKind.ImplementsKeyword || parent.parent.parent.kind === ts.SyntaxKind.InterfaceDeclaration - ? 2 - : 4; + ? 2 /* Type */ + : 4 /* Value */; case ts.SyntaxKind.TypeQuery: - return 5 | 8; + return 5 /* ValueOrNamespace */ | 8 /* TypeQuery */; case ts.SyntaxKind.QualifiedName: if (parent.left === node) { if (getEntityNameParent(parent).kind === ts.SyntaxKind.TypeQuery) - return 1 | 8; - return 1; + return 1 /* Namespace */ | 8 /* TypeQuery */; + return 1 /* Namespace */; } break; case ts.SyntaxKind.ExportSpecifier: + // either {name} or {propertyName as name} if (parent.propertyName === undefined || parent.propertyName === node) - return 7; + return 7 /* Any */; // TODO handle type-only exports break; case ts.SyntaxKind.ExportAssignment: - return 7; + return 7 /* Any */; + // Value case ts.SyntaxKind.BindingElement: if (parent.initializer === node) - return 5; + return 5 /* ValueOrNamespace */; break; case ts.SyntaxKind.Parameter: case ts.SyntaxKind.EnumMember: @@ -57,7 +61,7 @@ function getUsageDomain(node) { case ts.SyntaxKind.PropertyAccessExpression: case ts.SyntaxKind.ImportEqualsDeclaration: if (parent.name !== node) - return 5; + return 5 /* ValueOrNamespace */; // TODO handle type-only imports break; case ts.SyntaxKind.JsxAttribute: case ts.SyntaxKind.FunctionDeclaration: @@ -75,16 +79,18 @@ function getUsageDomain(node) { case ts.SyntaxKind.ContinueStatement: case ts.SyntaxKind.ImportClause: case ts.SyntaxKind.ImportSpecifier: - case ts.SyntaxKind.TypePredicate: + case ts.SyntaxKind.TypePredicate: // TODO this actually references a parameter case ts.SyntaxKind.MethodSignature: case ts.SyntaxKind.PropertySignature: case ts.SyntaxKind.NamespaceExportDeclaration: + case ts.SyntaxKind.NamespaceExport: case ts.SyntaxKind.InterfaceDeclaration: case ts.SyntaxKind.TypeAliasDeclaration: case ts.SyntaxKind.TypeParameter: + case ts.SyntaxKind.NamedTupleMember: break; default: - return 5; + return 5 /* ValueOrNamespace */; } } exports.getUsageDomain = getUsageDomain; @@ -93,31 +99,32 @@ function getDeclarationDomain(node) { case ts.SyntaxKind.TypeParameter: case ts.SyntaxKind.InterfaceDeclaration: case ts.SyntaxKind.TypeAliasDeclaration: - return 2; + return 2 /* Type */; case ts.SyntaxKind.ClassDeclaration: case ts.SyntaxKind.ClassExpression: - return 2 | 4; + return 2 /* Type */ | 4 /* Value */; case ts.SyntaxKind.EnumDeclaration: - return 7; + return 7 /* Any */; case ts.SyntaxKind.NamespaceImport: case ts.SyntaxKind.ImportClause: - return 7 | 8; + return 7 /* Any */ | 8 /* Import */; // TODO handle type-only imports case ts.SyntaxKind.ImportEqualsDeclaration: case ts.SyntaxKind.ImportSpecifier: return node.parent.name === node - ? 7 | 8 + ? 7 /* Any */ | 8 /* Import */ // TODO handle type-only imports : undefined; case ts.SyntaxKind.ModuleDeclaration: - return 1; + return 1 /* Namespace */; case ts.SyntaxKind.Parameter: if (node.parent.parent.kind === ts.SyntaxKind.IndexSignature || node.originalKeywordKind === ts.SyntaxKind.ThisKeyword) return; + // falls through case ts.SyntaxKind.BindingElement: case ts.SyntaxKind.VariableDeclaration: - return node.parent.name === node ? 4 : undefined; + return node.parent.name === node ? 4 /* Value */ : undefined; case ts.SyntaxKind.FunctionDeclaration: case ts.SyntaxKind.FunctionExpression: - return 4; + return 4 /* Value */; } } exports.getDeclarationDomain = getDeclarationDomain; @@ -186,7 +193,8 @@ class AbstractScope { } }); } - markExported(_name) { } + // tslint:disable-next-line:prefer-function-over-method + markExported(_name) { } // only relevant for the root scope createOrReuseNamespaceScope(name, _exported, ambient, hasExportStatement) { let scope; if (this._namespaceScopes === undefined) { @@ -231,17 +239,17 @@ class AbstractScope { variable.uses.push(use); return true; } - _addUseToParent(_use) { } + _addUseToParent(_use) { } // tslint:disable-line:prefer-function-over-method } class RootScope extends AbstractScope { constructor(_exportAll, global) { super(global); this._exportAll = _exportAll; this._exports = undefined; - this._innerScope = new NonRootScope(this, 1); + this._innerScope = new NonRootScope(this, 1 /* Function */); } addVariable(identifier, name, selector, exported, domain) { - if (domain & 8) + if (domain & 8 /* Import */) return super.addVariable(identifier, name, selector, exported, domain); return this._innerScope.addVariable(identifier, name, selector, exported, domain); } @@ -292,7 +300,7 @@ class NonRootScope extends AbstractScope { } class EnumScope extends NonRootScope { constructor(parent) { - super(parent, 1); + super(parent, 1 /* Function */); } end() { this._applyUses(); @@ -300,21 +308,21 @@ class EnumScope extends NonRootScope { } class ConditionalTypeScope extends NonRootScope { constructor(parent) { - super(parent, 8); - this._state = 0; + super(parent, 8 /* ConditionalType */); + this._state = 0 /* Initial */; } updateState(newState) { this._state = newState; } addUse(use) { - if (this._state === 2) + if (this._state === 2 /* TrueType */) return void this._uses.push(use); return this._parent.addUse(use, this); } } class FunctionScope extends NonRootScope { constructor(parent) { - super(parent, 1); + super(parent, 1 /* Function */); } beginBody() { this._applyUses(); @@ -322,7 +330,7 @@ class FunctionScope extends NonRootScope { } class AbstractNamedExpressionScope extends NonRootScope { constructor(_name, _domain, parent) { - super(parent, 1); + super(parent, 1 /* Function */); this._name = _name; this._domain = _domain; } @@ -355,7 +363,7 @@ class AbstractNamedExpressionScope extends NonRootScope { } class FunctionExpressionScope extends AbstractNamedExpressionScope { constructor(name, parent) { - super(name, 4, parent); + super(name, 4 /* Value */, parent); this._innerScope = new FunctionScope(this); } beginBody() { @@ -364,13 +372,13 @@ class FunctionExpressionScope extends AbstractNamedExpressionScope { } class ClassExpressionScope extends AbstractNamedExpressionScope { constructor(name, parent) { - super(name, 4 | 2, parent); - this._innerScope = new NonRootScope(this, 1); + super(name, 4 /* Value */ | 2 /* Type */, parent); + this._innerScope = new NonRootScope(this, 1 /* Function */); } } class BlockScope extends NonRootScope { constructor(_functionScope, parent) { - super(parent, 2); + super(parent, 2 /* Block */); this._functionScope = _functionScope; } getFunctionScope() { @@ -386,10 +394,10 @@ function mapDeclaration(declaration) { } class NamespaceScope extends NonRootScope { constructor(_ambient, _hasExport, parent) { - super(parent, 1); + super(parent, 1 /* Function */); this._ambient = _ambient; this._hasExport = _hasExport; - this._innerScope = new NonRootScope(this, 1); + this._innerScope = new NonRootScope(this, 1 /* Function */); this._exports = undefined; } finish(cb) { @@ -424,7 +432,7 @@ class NamespaceScope extends NonRootScope { } }); this._applyUses(); - this._innerScope = new NonRootScope(this, 1); + this._innerScope = new NonRootScope(this, 1 /* Function */); } createOrReuseNamespaceScope(name, exported, ambient, hasExportStatement) { if (!exported && (!this._ambient || this._hasExport)) @@ -460,6 +468,9 @@ function getEntityNameParent(name) { parent = parent.parent; return parent; } +// TODO class decorators resolve outside of class, element and parameter decorator resolve inside/at the class +// TODO computed property name resolves inside/at the cass +// TODO this and super in all of them are resolved outside of the class class UsageWalker { constructor() { this._result = new Map(); @@ -477,21 +488,21 @@ class UsageWalker { case ts.SyntaxKind.ClassExpression: return continueWithScope(node, node.name !== undefined ? new ClassExpressionScope(node.name, this._scope) - : new NonRootScope(this._scope, 1)); + : new NonRootScope(this._scope, 1 /* Function */)); case ts.SyntaxKind.ClassDeclaration: - this._handleDeclaration(node, true, 4 | 2); - return continueWithScope(node, new NonRootScope(this._scope, 1)); + this._handleDeclaration(node, true, 4 /* Value */ | 2 /* Type */); + return continueWithScope(node, new NonRootScope(this._scope, 1 /* Function */)); case ts.SyntaxKind.InterfaceDeclaration: case ts.SyntaxKind.TypeAliasDeclaration: - this._handleDeclaration(node, true, 2); - return continueWithScope(node, new NonRootScope(this._scope, 4)); + this._handleDeclaration(node, true, 2 /* Type */); + return continueWithScope(node, new NonRootScope(this._scope, 4 /* Type */)); case ts.SyntaxKind.EnumDeclaration: - this._handleDeclaration(node, true, 7); + this._handleDeclaration(node, true, 7 /* Any */); return continueWithScope(node, this._scope.createOrReuseEnumScope(node.name.text, util_1.hasModifier(node.modifiers, ts.SyntaxKind.ExportKeyword))); case ts.SyntaxKind.ModuleDeclaration: return this._handleModule(node, continueWithScope); case ts.SyntaxKind.MappedType: - return continueWithScope(node, new NonRootScope(this._scope, 4)); + return continueWithScope(node, new NonRootScope(this._scope, 4 /* Type */)); case ts.SyntaxKind.FunctionExpression: case ts.SyntaxKind.ArrowFunction: case ts.SyntaxKind.Constructor: @@ -507,6 +518,7 @@ class UsageWalker { return this._handleFunctionLikeDeclaration(node, cb, variableCallback); case ts.SyntaxKind.ConditionalType: return this._handleConditionalType(node, cb, variableCallback); + // End of Scope specific handling case ts.SyntaxKind.VariableDeclarationList: this._handleVariableDeclaration(node); break; @@ -517,16 +529,16 @@ class UsageWalker { this._handleBindingName(node.name, false, false); break; case ts.SyntaxKind.EnumMember: - this._scope.addVariable(util_1.getPropertyName(node.name), node.name, 1, true, 4); + this._scope.addVariable(util_1.getPropertyName(node.name), node.name, 1 /* Function */, true, 4 /* Value */); break; case ts.SyntaxKind.ImportClause: case ts.SyntaxKind.ImportSpecifier: case ts.SyntaxKind.NamespaceImport: case ts.SyntaxKind.ImportEqualsDeclaration: - this._handleDeclaration(node, false, 7 | 8); + this._handleDeclaration(node, false, 7 /* Any */ | 8 /* Import */); break; case ts.SyntaxKind.TypeParameter: - this._scope.addVariable(node.name.text, node.name, node.parent.kind === ts.SyntaxKind.InferType ? 8 : 7, false, 2); + this._scope.addVariable(node.name.text, node.name, node.parent.kind === ts.SyntaxKind.InferType ? 8 /* InferType */ : 7 /* Type */, false, 2 /* Type */); break; case ts.SyntaxKind.ExportSpecifier: if (node.propertyName !== undefined) @@ -567,11 +579,11 @@ class UsageWalker { const savedScope = this._scope; const scope = this._scope = new ConditionalTypeScope(savedScope); cb(node.checkType); - scope.updateState(1); + scope.updateState(1 /* Extends */); cb(node.extendsType); - scope.updateState(2); + scope.updateState(2 /* TrueType */); cb(node.trueType); - scope.updateState(3); + scope.updateState(3 /* FalseType */); cb(node.falseType); scope.end(varCb); this._scope = savedScope; @@ -581,7 +593,7 @@ class UsageWalker { node.decorators.forEach(cb); const savedScope = this._scope; if (node.kind === ts.SyntaxKind.FunctionDeclaration) - this._handleDeclaration(node, false, 4); + this._handleDeclaration(node, false, 4 /* Value */); const scope = this._scope = node.kind === ts.SyntaxKind.FunctionExpression && node.name !== undefined ? new FunctionExpressionScope(node.name, savedScope) : new FunctionScope(savedScope); @@ -604,7 +616,7 @@ class UsageWalker { return next(node, this._scope.createOrReuseNamespaceScope('-global', false, true, false)); if (node.name.kind === ts.SyntaxKind.Identifier) { const exported = isNamespaceExported(node); - this._scope.addVariable(node.name.text, node.name, 1, exported, 1 | 4); + this._scope.addVariable(node.name.text, node.name, 1 /* Function */, exported, 1 /* Namespace */ | 4 /* Value */); const ambient = util_1.hasModifier(node.modifiers, ts.SyntaxKind.DeclareKeyword); return next(node, this._scope.createOrReuseNamespaceScope(node.name.text, exported, ambient, ambient && namespaceHasExportStatement(node))); } @@ -612,13 +624,13 @@ class UsageWalker { } _handleDeclaration(node, blockScoped, domain) { if (node.name !== undefined) - this._scope.addVariable(node.name.text, node.name, blockScoped ? 3 : 1, util_1.hasModifier(node.modifiers, ts.SyntaxKind.ExportKeyword), domain); + this._scope.addVariable(node.name.text, node.name, blockScoped ? 3 /* Block */ : 1 /* Function */, util_1.hasModifier(node.modifiers, ts.SyntaxKind.ExportKeyword), domain); } _handleBindingName(name, blockScoped, exported) { if (name.kind === ts.SyntaxKind.Identifier) - return this._scope.addVariable(name.text, name, blockScoped ? 3 : 1, exported, 4); + return this._scope.addVariable(name.text, name, blockScoped ? 3 /* Block */ : 1 /* Function */, exported, 4 /* Value */); util_1.forEachDestructuringIdentifier(name, (declaration) => { - this._scope.addVariable(declaration.name.text, declaration.name, blockScoped ? 3 : 1, exported, 4); + this._scope.addVariable(declaration.name.text, declaration.name, blockScoped ? 3 /* Block */ : 1 /* Function */, exported, 4 /* Value */); }); } _handleVariableDeclaration(declarationList) { @@ -643,3 +655,4 @@ function containsExportStatement(block) { return true; return false; } +//# sourceMappingURL=usage.js.map \ No newline at end of file diff --git a/node_modules/tsutils/util/usage.js.map b/node_modules/tsutils/util/usage.js.map new file mode 100644 index 0000000000..c635819c17 --- /dev/null +++ b/node_modules/tsutils/util/usage.js.map @@ -0,0 +1 @@ +{"version":3,"file":"usage.js","sourceRoot":"","sources":["usage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/tsutils/util/util.d.ts b/node_modules/tsutils/util/util.d.ts index 1ae3299a8c..1e3c69d2bf 100644 --- a/node_modules/tsutils/util/util.d.ts +++ b/node_modules/tsutils/util/util.d.ts @@ -19,12 +19,31 @@ export declare function isObjectFlagSet(objectType: ts.ObjectType, flag: ts.Obje export declare function isModifierFlagSet(node: ts.Node, flag: ts.ModifierFlags): boolean; export declare function getPreviousStatement(statement: ts.Statement): ts.Statement | undefined; export declare function getNextStatement(statement: ts.Statement): ts.Statement | undefined; +/** Returns the token before the start of `node` or `undefined` if there is none. */ export declare function getPreviousToken(node: ts.Node, sourceFile?: ts.SourceFile): ts.Node | undefined; +/** Returns the next token that begins after the end of `node`. Returns `undefined` for SourceFile and EndOfFileToken */ export declare function getNextToken(node: ts.Node, sourceFile?: ts.SourceFile): ts.Node | undefined; +/** Returns the token at or following the specified position or undefined if none is found inside `parent`. */ export declare function getTokenAtPosition(parent: ts.Node, pos: number, sourceFile?: ts.SourceFile, allowJsDoc?: boolean): ts.Node | undefined; +/** + * Return the comment at the specified position. + * You can pass an optional `parent` to avoid some work finding the corresponding token starting at `sourceFile`. + * If the `parent` parameter is passed, `pos` must be between `parent.pos` and `parent.end`. +*/ export declare function getCommentAtPosition(sourceFile: ts.SourceFile, pos: number, parent?: ts.Node): ts.CommentRange | undefined; +/** + * Returns whether the specified position is inside a comment. + * You can pass an optional `parent` to avoid some work finding the corresponding token starting at `sourceFile`. + * If the `parent` parameter is passed, `pos` must be between `parent.pos` and `parent.end`. + */ export declare function isPositionInComment(sourceFile: ts.SourceFile, pos: number, parent?: ts.Node): boolean; export declare function commentText(sourceText: string, comment: ts.CommentRange): string; +/** Returns the deepest AST Node at `pos`. Returns undefined if `pos` is outside of the range of `node` */ +export declare function getAstNodeAtPosition(node: ts.Node, pos: number): ts.Node | undefined; +/** + * Returns the NodeWrap of deepest AST node that contains `pos` between its `pos` and `end`. + * Only returns undefined if pos is outside of `wrap` + */ export declare function getWrappedNodeAtPosition(wrap: NodeWrap, pos: number): NodeWrap | undefined; export declare function getPropertyName(propertyName: ts.PropertyName): string | undefined; export declare function forEachDestructuringIdentifier(pattern: ts.BindingPattern, fn: (element: ts.BindingElement & { @@ -60,24 +79,58 @@ export declare function isScopeBoundary(node: ts.Node): ScopeBoundary; export declare function isTypeScopeBoundary(node: ts.Node): ScopeBoundary; export declare function isFunctionScopeBoundary(node: ts.Node): ScopeBoundary; export declare function isBlockScopeBoundary(node: ts.Node): ScopeBoundary; +/** Returns true for scope boundaries that have their own `this` reference instead of inheriting it from the containing scope */ export declare function hasOwnThisReference(node: ts.Node): boolean; export declare function isFunctionWithBody(node: ts.Node): node is ts.FunctionLikeDeclaration & { body: {}; }; +/** + * Iterate over all tokens of `node` + * + * @param node The node whose tokens should be visited + * @param cb Is called for every token contained in `node` + */ export declare function forEachToken(node: ts.Node, cb: (node: ts.Node) => void, sourceFile?: ts.SourceFile): void; export declare type ForEachTokenCallback = (fullText: string, kind: ts.SyntaxKind, range: ts.TextRange, parent: ts.Node) => void; +/** + * Iterate over all tokens and trivia of `node` + * + * @description JsDoc comments are treated like regular comments + * + * @param node The node whose tokens should be visited + * @param cb Is called for every token contained in `node` and trivia before the token + */ export declare function forEachTokenWithTrivia(node: ts.Node, cb: ForEachTokenCallback, sourceFile?: ts.SourceFile): void; export declare type ForEachCommentCallback = (fullText: string, comment: ts.CommentRange) => void; +/** Iterate over all comments owned by `node` or its children */ export declare function forEachComment(node: ts.Node, cb: ForEachCommentCallback, sourceFile?: ts.SourceFile): void; export interface LineRange extends ts.TextRange { contentLength: number; } export declare function getLineRanges(sourceFile: ts.SourceFile): LineRange[]; +/** Get the line break style used in sourceFile. This function only looks at the first line break. If there is none, \n is assumed. */ export declare function getLineBreakStyle(sourceFile: ts.SourceFile): "\n" | "\r\n"; +/** + * Determines whether the given text parses as a standalone identifier. + * This is not a guarantee that it works in every context. The property name in PropertyAccessExpressions for example allows reserved words. + * Depending on the context it could be parsed as contextual keyword or TypeScript keyword. + */ export declare function isValidIdentifier(text: string, languageVersion?: ts.ScriptTarget): boolean; +/** + * Determines whether the given text can be used to access a property with a PropertyAccessExpression while preserving the property's name. + */ export declare function isValidPropertyAccess(text: string, languageVersion?: ts.ScriptTarget): boolean; +/** + * Determines whether the given text can be used as unquoted name of a property declaration while preserving the property's name. + */ export declare function isValidPropertyName(text: string, languageVersion?: ts.ScriptTarget): boolean; +/** + * Determines whether the given text can be parsed as a numeric literal. + */ export declare function isValidNumericLiteral(text: string, languageVersion?: ts.ScriptTarget): boolean; +/** + * Determines whether the given text can be used as JSX tag or attribute name while preserving the exact name. + */ export declare function isValidJsxIdentifier(text: string, languageVersion?: ts.ScriptTarget): boolean; export declare function isNumericPropertyName(name: string | ts.__String): boolean; export declare function isSameLine(sourceFile: ts.SourceFile, pos1: number, pos2: number): boolean; @@ -88,6 +141,7 @@ export declare enum SideEffectOptions { JsxElement = 4 } export declare function hasSideEffects(node: ts.Expression, options?: SideEffectOptions): boolean; +/** Returns the VariableDeclaration or ParameterDeclaration that contains the BindingElement */ export declare function getDeclarationOfBindingElement(node: ts.BindingElement): ts.VariableDeclaration | ts.ParameterDeclaration; export declare function isExpressionValueUsed(node: ts.Expression): boolean; export declare enum AccessKind { @@ -101,7 +155,14 @@ export declare enum AccessKind { export declare function getAccessKind(node: ts.Node): AccessKind; export declare function isReassignmentTarget(node: ts.Expression): boolean; export declare function canHaveJsDoc(node: ts.Node): node is ts.HasJSDoc; +/** Gets the JSDoc of a node. For performance reasons this function should only be called when `canHaveJsDoc` returns true. */ export declare function getJsDoc(node: ts.Node, sourceFile?: ts.SourceFile): ts.JSDoc[]; +/** + * Parses the JsDoc of any node. This function is made for nodes that don't get their JsDoc parsed by the TypeScript parser. + * + * @param considerTrailingComments When set to `true` this function uses the trailing comments if the node starts on the same line + * as the previous node ends. + */ export declare function parseJsDocOfNode(node: ts.Node, considerTrailingComments?: boolean, sourceFile?: ts.SourceFile): ts.JSDoc[]; export declare enum ImportKind { ImportDeclaration = 1, @@ -116,19 +177,24 @@ export declare enum ImportKind { AllImportExpressions = 24, AllRequireLike = 18 } -export declare function findImports(sourceFile: ts.SourceFile, kinds: ImportKind): (ts.StringLiteral | ts.NoSubstitutionTemplateLiteral)[]; -export declare type ImportLike = ts.ImportDeclaration | (ts.ImportEqualsDeclaration & { +export declare function findImports(sourceFile: ts.SourceFile, kinds: ImportKind, ignoreFileName?: boolean): (ts.StringLiteral | ts.NoSubstitutionTemplateLiteral)[]; +export declare type ImportLike = ts.ImportDeclaration | ts.ImportEqualsDeclaration & { moduleReference: ts.ExternalModuleReference; -}) | (ts.ExportDeclaration & { +} | ts.ExportDeclaration & { moduleSpecifier: {}; -}) | (ts.CallExpression & { - expression: ts.Token | (ts.Identifier & { +} | ts.CallExpression & { + expression: ts.Token | ts.Identifier & { text: 'require'; - }); - arguments: [ts.Expression]; -}) | ts.ImportTypeNode; -export declare function findImportLikeNodes(sourceFile: ts.SourceFile, kinds: ImportKind): ImportLike[]; + }; + arguments: [ts.Expression, ...ts.Expression[]]; +} | ts.ImportTypeNode; +export declare function findImportLikeNodes(sourceFile: ts.SourceFile, kinds: ImportKind, ignoreFileName?: boolean): ImportLike[]; +/** + * Ambient context means the statement itself has the `declare` keyword + * or is inside a `declare namespace`, `delcare module` or `declare global`. + */ export declare function isStatementInAmbientContext(node: ts.Statement): boolean; +/** Includes `declare namespace`, `declare module` and `declare global` and namespace nested in one of the aforementioned. */ export declare function isAmbientModuleBlock(node: ts.Node): node is ts.ModuleBlock; export declare function getIIFE(func: ts.FunctionExpression | ts.ArrowFunction): ts.CallExpression | undefined; export declare type StrictCompilerOption = 'noImplicitAny' | 'noImplicitThis' | 'strictNullChecks' | 'strictFunctionTypes' | 'strictPropertyInitialization' | 'alwaysStrict' | 'strictBindCallApply'; @@ -138,12 +204,32 @@ export declare type BooleanCompilerOptions = { } extends { [_ in keyof ts.CompilerOptions]: infer U; } ? U : never; +/** + * Checks if a given compiler option is enabled. + * It handles dependencies of options, e.g. `declaration` is implicitly enabled by `composite` or `strictNullChecks` is enabled by `strict`. + * However, it does not check dependencies that are already checked and reported as errors, e.g. `checkJs` without `allowJs`. + * This function only handles boolean flags. + */ export declare function isCompilerOptionEnabled(options: ts.CompilerOptions, option: BooleanCompilerOptions | 'stripInternal'): boolean; +/** + * Has nothing to do with `isAmbientModuleBlock`. + * + * @returns `true` if it's a global augmentation or has a string name. + */ export declare function isAmbientModule(node: ts.ModuleDeclaration): boolean; +/** + * @deprecated use `getTsCheckDirective` instead since `// @ts-nocheck` is no longer restricted to JS files. + * @returns the last `// @ts-check` or `// @ts-nocheck` directive in the given file. + */ export declare function getCheckJsDirective(source: string): ts.CheckJsDirective | undefined; +/** @returns the last `// @ts-check` or `// @ts-nocheck` directive in the given file. */ +export declare function getTsCheckDirective(source: string): ts.CheckJsDirective | undefined; export declare function isConstAssertion(node: ts.AssertionExpression): boolean; +/** Detects whether an expression is affected by an enclosing 'as const' assertion and therefore treated literally. */ export declare function isInConstContext(node: ts.Expression): boolean; +/** Returns true for `Object.defineProperty(o, 'prop', {value, writable: false})` and `Object.defineProperty(o, 'prop', {get: () => 1})`*/ export declare function isReadonlyAssignmentDeclaration(node: ts.CallExpression, checker: ts.TypeChecker): boolean; +/** Determines whether a call to `Object.defineProperty` is statically analyzable. */ export declare function isBindableObjectDefinePropertyCall(node: ts.CallExpression): boolean; export interface WellKnownSymbolLiteral extends ts.PropertyAccessExpression { expression: ts.Identifier & { @@ -158,10 +244,21 @@ export interface PropertyName { } export declare function getPropertyNameOfWellKnownSymbol(node: WellKnownSymbolLiteral): PropertyName; export interface LateBoundPropertyNames { + /** Whether all constituents are literal names. */ known: boolean; names: PropertyName[]; } export declare function getLateBoundPropertyNames(node: ts.Expression, checker: ts.TypeChecker): LateBoundPropertyNames; export declare function getLateBoundPropertyNamesOfPropertyName(node: ts.PropertyName, checker: ts.TypeChecker): LateBoundPropertyNames; +/** Most declarations demand there to be only one statically known name, e.g. class members with computed name. */ export declare function getSingleLateBoundPropertyNameOfPropertyName(node: ts.PropertyName, checker: ts.TypeChecker): PropertyName | undefined; export declare function unwrapParentheses(node: ts.Expression): ts.Expression; +export declare function formatPseudoBigInt(v: ts.PseudoBigInt): `${string}n` | `-${string}n`; +/** + * Determines whether the given `SwitchStatement`'s `case` clauses cover every possible value of the switched expression. + * The logic is the same as TypeScript's control flow analysis. + * This does **not** check whether all `case` clauses do a certain action like assign a variable or return a value. + * This function ignores the `default` clause if present. + */ +export declare function hasExhaustiveCaseClauses(node: ts.SwitchStatement, checker: ts.TypeChecker): boolean; +export declare function getBaseOfClassLikeExpression(node: ts.ClassLikeDeclaration): ts.ExpressionWithTypeArguments | undefined; diff --git a/node_modules/tsutils/util/util.js b/node_modules/tsutils/util/util.js index 07b469a496..a635b3dc4a 100644 --- a/node_modules/tsutils/util/util.js +++ b/node_modules/tsutils/util/util.js @@ -1,5 +1,7 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.isValidIdentifier = exports.getLineBreakStyle = exports.getLineRanges = exports.forEachComment = exports.forEachTokenWithTrivia = exports.forEachToken = exports.isFunctionWithBody = exports.hasOwnThisReference = exports.isBlockScopeBoundary = exports.isFunctionScopeBoundary = exports.isTypeScopeBoundary = exports.isScopeBoundary = exports.ScopeBoundarySelector = exports.ScopeBoundary = exports.isInSingleStatementContext = exports.isBlockScopedDeclarationStatement = exports.isBlockScopedVariableDeclaration = exports.isBlockScopedVariableDeclarationList = exports.getVariableDeclarationKind = exports.VariableDeclarationKind = exports.forEachDeclaredVariable = exports.forEachDestructuringIdentifier = exports.getPropertyName = exports.getWrappedNodeAtPosition = exports.getAstNodeAtPosition = exports.commentText = exports.isPositionInComment = exports.getCommentAtPosition = exports.getTokenAtPosition = exports.getNextToken = exports.getPreviousToken = exports.getNextStatement = exports.getPreviousStatement = exports.isModifierFlagSet = exports.isObjectFlagSet = exports.isSymbolFlagSet = exports.isTypeFlagSet = exports.isNodeFlagSet = exports.hasAccessModifier = exports.isParameterProperty = exports.hasModifier = exports.getModifier = exports.isThisParameter = exports.isKeywordKind = exports.isJsDocKind = exports.isTypeNodeKind = exports.isAssignmentKind = exports.isNodeKind = exports.isTokenKind = exports.getChildOfKind = void 0; +exports.getBaseOfClassLikeExpression = exports.hasExhaustiveCaseClauses = exports.formatPseudoBigInt = exports.unwrapParentheses = exports.getSingleLateBoundPropertyNameOfPropertyName = exports.getLateBoundPropertyNamesOfPropertyName = exports.getLateBoundPropertyNames = exports.getPropertyNameOfWellKnownSymbol = exports.isWellKnownSymbolLiterally = exports.isBindableObjectDefinePropertyCall = exports.isReadonlyAssignmentDeclaration = exports.isInConstContext = exports.isConstAssertion = exports.getTsCheckDirective = exports.getCheckJsDirective = exports.isAmbientModule = exports.isCompilerOptionEnabled = exports.isStrictCompilerOptionEnabled = exports.getIIFE = exports.isAmbientModuleBlock = exports.isStatementInAmbientContext = exports.findImportLikeNodes = exports.findImports = exports.ImportKind = exports.parseJsDocOfNode = exports.getJsDoc = exports.canHaveJsDoc = exports.isReassignmentTarget = exports.getAccessKind = exports.AccessKind = exports.isExpressionValueUsed = exports.getDeclarationOfBindingElement = exports.hasSideEffects = exports.SideEffectOptions = exports.isSameLine = exports.isNumericPropertyName = exports.isValidJsxIdentifier = exports.isValidNumericLiteral = exports.isValidPropertyName = exports.isValidPropertyAccess = void 0; const ts = require("typescript"); const node_1 = require("../typeguard/node"); const _3_2_1 = require("../typeguard/3.2"); @@ -59,7 +61,7 @@ function isParameterProperty(node) { } exports.isParameterProperty = isParameterProperty; function hasAccessModifier(node) { - return hasModifier(node.modifiers, ts.SyntaxKind.PublicKeyword, ts.SyntaxKind.ProtectedKeyword, ts.SyntaxKind.PrivateKeyword); + return isModifierFlagSet(node, ts.ModifierFlags.AccessibilityModifier); } exports.hasAccessModifier = hasAccessModifier; function isFlagSet(obj, flag) { @@ -94,28 +96,19 @@ function getNextStatement(statement) { } } exports.getNextStatement = getNextStatement; +/** Returns the token before the start of `node` or `undefined` if there is none. */ function getPreviousToken(node, sourceFile) { - let parent = node.parent; - while (parent !== undefined && parent.pos === node.pos) - parent = parent.parent; - if (parent === undefined) + const { pos } = node; + if (pos === 0) return; - outer: while (true) { - const children = parent.getChildren(sourceFile); - for (let i = children.length - 1; i >= 0; --i) { - const child = children[i]; - if (child.pos < node.pos && child.kind !== ts.SyntaxKind.JSDocComment) { - if (isTokenKind(child.kind)) - return child; - parent = child; - continue outer; - } - } - return; - } + do + node = node.parent; + while (node.pos === pos); + return getTokenAtPositionWorker(node, pos - 1, sourceFile !== null && sourceFile !== void 0 ? sourceFile : node.getSourceFile(), false); } exports.getPreviousToken = getPreviousToken; -function getNextToken(node, sourceFile = node.getSourceFile()) { +/** Returns the next token that begins after the end of `node`. Returns `undefined` for SourceFile and EndOfFileToken */ +function getNextToken(node, sourceFile) { if (node.kind === ts.SyntaxKind.SourceFile || node.kind === ts.SyntaxKind.EndOfFileToken) return; const end = node.end; @@ -125,25 +118,31 @@ function getNextToken(node, sourceFile = node.getSourceFile()) { return node.endOfFileToken; node = node.parent; } - return getTokenAtPositionWorker(node, end, sourceFile, false); + return getTokenAtPositionWorker(node, end, sourceFile !== null && sourceFile !== void 0 ? sourceFile : node.getSourceFile(), false); } exports.getNextToken = getNextToken; +/** Returns the token at or following the specified position or undefined if none is found inside `parent`. */ function getTokenAtPosition(parent, pos, sourceFile, allowJsDoc) { if (pos < parent.pos || pos >= parent.end) return; if (isTokenKind(parent.kind)) return parent; - if (sourceFile === undefined) - sourceFile = parent.getSourceFile(); - return getTokenAtPositionWorker(parent, pos, sourceFile, allowJsDoc === true); + return getTokenAtPositionWorker(parent, pos, sourceFile !== null && sourceFile !== void 0 ? sourceFile : parent.getSourceFile(), allowJsDoc === true); } exports.getTokenAtPosition = getTokenAtPosition; function getTokenAtPositionWorker(node, pos, sourceFile, allowJsDoc) { + if (!allowJsDoc) { + // if we are not interested in JSDoc, we can skip to the deepest AST node at the given position + node = getAstNodeAtPosition(node, pos); + if (isTokenKind(node.kind)) + return node; + } outer: while (true) { for (const child of node.getChildren(sourceFile)) { if (child.end > pos && (allowJsDoc || child.kind !== ts.SyntaxKind.JSDocComment)) { if (isTokenKind(child.kind)) return child; + // next token is nested in another node node = child; continue outer; } @@ -151,6 +150,11 @@ function getTokenAtPositionWorker(node, pos, sourceFile, allowJsDoc) { return; } } +/** + * Return the comment at the specified position. + * You can pass an optional `parent` to avoid some work finding the corresponding token starting at `sourceFile`. + * If the `parent` parameter is passed, `pos` must be between `parent.pos` and `parent.end`. +*/ function getCommentAtPosition(sourceFile, pos, parent = sourceFile) { const token = getTokenAtPosition(parent, pos, sourceFile); if (token === undefined || token.kind === ts.SyntaxKind.JsxText || pos >= token.end - (ts.tokenToString(token.kind) || '').length) @@ -165,6 +169,11 @@ exports.getCommentAtPosition = getCommentAtPosition; function commentAtPositionCallback(pos, end, kind, _nl, at) { return at >= pos && at < end ? { pos, end, kind } : undefined; } +/** + * Returns whether the specified position is inside a comment. + * You can pass an optional `parent` to avoid some work finding the corresponding token starting at `sourceFile`. + * If the `parent` parameter is passed, `pos` must be between `parent.pos` and `parent.end`. + */ function isPositionInComment(sourceFile, pos, parent) { return getCommentAtPosition(sourceFile, pos, parent) !== undefined; } @@ -173,6 +182,23 @@ function commentText(sourceText, comment) { return sourceText.substring(comment.pos + 2, comment.kind === ts.SyntaxKind.SingleLineCommentTrivia ? comment.end : comment.end - 2); } exports.commentText = commentText; +/** Returns the deepest AST Node at `pos`. Returns undefined if `pos` is outside of the range of `node` */ +function getAstNodeAtPosition(node, pos) { + if (node.pos > pos || node.end <= pos) + return; + while (isNodeKind(node.kind)) { + const nested = ts.forEachChild(node, (child) => child.pos <= pos && child.end > pos ? child : undefined); + if (nested === undefined) + break; + node = nested; + } + return node; +} +exports.getAstNodeAtPosition = getAstNodeAtPosition; +/** + * Returns the NodeWrap of deepest AST node that contains `pos` between its `pos` and `end`. + * Only returns undefined if pos is outside of `wrap` + */ function getWrappedNodeAtPosition(wrap, pos) { if (wrap.node.pos > pos || wrap.node.end <= pos) return; @@ -191,13 +217,31 @@ function getWrappedNodeAtPosition(wrap, pos) { exports.getWrappedNodeAtPosition = getWrappedNodeAtPosition; function getPropertyName(propertyName) { if (propertyName.kind === ts.SyntaxKind.ComputedPropertyName) { - if (!node_1.isLiteralExpression(propertyName.expression)) - return; - if (_3_2_1.isBigIntLiteral(propertyName.expression)) - return propertyName.expression.text.slice(0, -1); - return propertyName.expression.text; + const expression = unwrapParentheses(propertyName.expression); + if (node_1.isPrefixUnaryExpression(expression)) { + let negate = false; + switch (expression.operator) { + case ts.SyntaxKind.MinusToken: + negate = true; + // falls through + case ts.SyntaxKind.PlusToken: + return node_1.isNumericLiteral(expression.operand) + ? `${negate ? '-' : ''}${expression.operand.text}` + : _3_2_1.isBigIntLiteral(expression.operand) + ? `${negate ? '-' : ''}${expression.operand.text.slice(0, -1)}` + : undefined; + default: + return; + } + } + if (_3_2_1.isBigIntLiteral(expression)) + // handle BigInt, even though TypeScript doesn't allow BigInt as computed property name + return expression.text.slice(0, -1); + if (node_1.isNumericOrStringLikeLiteral(expression)) + return expression.text; + return; } - return propertyName.text; + return propertyName.kind === ts.SyntaxKind.PrivateIdentifier ? undefined : propertyName.text; } exports.getPropertyName = getPropertyName; function forEachDestructuringIdentifier(pattern, fn) { @@ -238,10 +282,10 @@ var VariableDeclarationKind; })(VariableDeclarationKind = exports.VariableDeclarationKind || (exports.VariableDeclarationKind = {})); function getVariableDeclarationKind(declarationList) { if (declarationList.flags & ts.NodeFlags.Let) - return 1; + return 1 /* Let */; if (declarationList.flags & ts.NodeFlags.Const) - return 2; - return 0; + return 2 /* Const */; + return 0 /* Var */; } exports.getVariableDeclarationKind = getVariableDeclarationKind; function isBlockScopedVariableDeclarationList(declarationList) { @@ -308,11 +352,11 @@ function isTypeScopeBoundary(node) { case ts.SyntaxKind.InterfaceDeclaration: case ts.SyntaxKind.TypeAliasDeclaration: case ts.SyntaxKind.MappedType: - return 4; + return 4 /* Type */; case ts.SyntaxKind.ConditionalType: - return 8; + return 8 /* ConditionalType */; default: - return 0; + return 0 /* None */; } } exports.isTypeScopeBoundary = isTypeScopeBoundary; @@ -334,11 +378,12 @@ function isFunctionScopeBoundary(node) { case ts.SyntaxKind.ConstructSignature: case ts.SyntaxKind.ConstructorType: case ts.SyntaxKind.FunctionType: - return 1; + return 1 /* Function */; case ts.SyntaxKind.SourceFile: - return ts.isExternalModule(node) ? 1 : 0; + // if SourceFile is no module, it contributes to the global scope and is therefore no scope boundary + return ts.isExternalModule(node) ? 1 /* Function */ : 0 /* None */; default: - return 0; + return 0 /* None */; } } exports.isFunctionScopeBoundary = isFunctionScopeBoundary; @@ -347,22 +392,26 @@ function isBlockScopeBoundary(node) { case ts.SyntaxKind.Block: const parent = node.parent; return parent.kind !== ts.SyntaxKind.CatchClause && + // blocks inside SourceFile are block scope boundaries (parent.kind === ts.SyntaxKind.SourceFile || + // blocks that are direct children of a function scope boundary are no scope boundary + // for example the FunctionBlock is part of the function scope of the containing function !isFunctionScopeBoundary(parent)) - ? 2 - : 0; + ? 2 /* Block */ + : 0 /* None */; case ts.SyntaxKind.ForStatement: case ts.SyntaxKind.ForInStatement: case ts.SyntaxKind.ForOfStatement: case ts.SyntaxKind.CaseBlock: case ts.SyntaxKind.CatchClause: case ts.SyntaxKind.WithStatement: - return 2; + return 2 /* Block */; default: - return 0; + return 0 /* None */; } } exports.isBlockScopeBoundary = isBlockScopeBoundary; +/** Returns true for scope boundaries that have their own `this` reference instead of inheriting it from the containing scope */ function hasOwnThisReference(node) { switch (node.kind) { case ts.SyntaxKind.ClassDeclaration: @@ -396,21 +445,48 @@ function isFunctionWithBody(node) { } } exports.isFunctionWithBody = isFunctionWithBody; +/** + * Iterate over all tokens of `node` + * + * @param node The node whose tokens should be visited + * @param cb Is called for every token contained in `node` + */ function forEachToken(node, cb, sourceFile = node.getSourceFile()) { - return (function iterate(child) { - if (isTokenKind(child.kind)) - return cb(child); - if (child.kind !== ts.SyntaxKind.JSDocComment) - return child.getChildren(sourceFile).forEach(iterate); - })(node); + const queue = []; + while (true) { + if (isTokenKind(node.kind)) { + cb(node); + } + else if (node.kind !== ts.SyntaxKind.JSDocComment) { + const children = node.getChildren(sourceFile); + if (children.length === 1) { + node = children[0]; + continue; + } + for (let i = children.length - 1; i >= 0; --i) + queue.push(children[i]); // add children in reverse order, when we pop the next element from the queue, it's the first child + } + if (queue.length === 0) + break; + node = queue.pop(); + } } exports.forEachToken = forEachToken; +/** + * Iterate over all tokens and trivia of `node` + * + * @description JsDoc comments are treated like regular comments + * + * @param node The node whose tokens should be visited + * @param cb Is called for every token contained in `node` and trivia before the token + */ function forEachTokenWithTrivia(node, cb, sourceFile = node.getSourceFile()) { const fullText = sourceFile.text; const scanner = ts.createScanner(sourceFile.languageVersion, false, sourceFile.languageVariant, fullText); return forEachToken(node, (token) => { const tokenStart = token.kind === ts.SyntaxKind.JsxText || token.pos === token.end ? token.pos : token.getStart(sourceFile); if (tokenStart !== token.pos) { + // we only have to handle trivia before each token. whitespace at the end of the file is followed by EndOfFileToken scanner.setTextPos(token.pos); let kind = scanner.scan(); let pos = scanner.getTokenPos(); @@ -427,14 +503,22 @@ function forEachTokenWithTrivia(node, cb, sourceFile = node.getSourceFile()) { }, sourceFile); } exports.forEachTokenWithTrivia = forEachTokenWithTrivia; +/** Iterate over all comments owned by `node` or its children */ function forEachComment(node, cb, sourceFile = node.getSourceFile()) { + /* Visit all tokens and skip trivia. + Comment ranges between tokens are parsed without the need of a scanner. + forEachTokenWithWhitespace does intentionally not pay attention to the correct comment ownership of nodes as it always + scans all trivia before each token, which could include trailing comments of the previous token. + Comment onwership is done right in this function*/ const fullText = sourceFile.text; const notJsx = sourceFile.languageVariant !== ts.LanguageVariant.JSX; return forEachToken(node, (token) => { if (token.pos === token.end) return; if (token.kind !== ts.SyntaxKind.JsxText) - ts.forEachLeadingCommentRange(fullText, token.pos === 0 ? (ts.getShebang(fullText) || '').length : token.pos, commentCallback); + ts.forEachLeadingCommentRange(fullText, + // skip shebang at position 0 + token.pos === 0 ? (ts.getShebang(fullText) || '').length : token.pos, commentCallback); if (notJsx || canHaveTrailingTrivia(token)) return ts.forEachTrailingCommentRange(fullText, token.end, commentCallback); }, sourceFile); @@ -443,21 +527,25 @@ function forEachComment(node, cb, sourceFile = node.getSourceFile()) { } } exports.forEachComment = forEachComment; +/** Exclude trailing positions that would lead to scanning for trivia inside JsxText */ function canHaveTrailingTrivia(token) { switch (token.kind) { case ts.SyntaxKind.CloseBraceToken: + // after a JsxExpression inside a JsxElement's body can only be other JsxChild, but no trivia return token.parent.kind !== ts.SyntaxKind.JsxExpression || !isJsxElementOrFragment(token.parent.parent); case ts.SyntaxKind.GreaterThanToken: switch (token.parent.kind) { case ts.SyntaxKind.JsxOpeningElement: + // if end is not equal, this is part of the type arguments list. in all other cases it would be inside the element body return token.end !== token.parent.end; case ts.SyntaxKind.JsxOpeningFragment: - return false; + return false; // would be inside the fragment case ts.SyntaxKind.JsxSelfClosingElement: - return token.end !== token.parent.end || - !isJsxElementOrFragment(token.parent.parent); + return token.end !== token.parent.end || // if end is not equal, this is part of the type arguments list + !isJsxElementOrFragment(token.parent.parent); // there's only trailing trivia if it's the end of the top element case ts.SyntaxKind.JsxClosingElement: case ts.SyntaxKind.JsxClosingFragment: + // there's only trailing trivia if it's the end of the top element return !isJsxElementOrFragment(token.parent.parent.parent); } } @@ -493,6 +581,7 @@ function getLineRanges(sourceFile) { return result; } exports.getLineRanges = getLineRanges; +/** Get the line break style used in sourceFile. This function only looks at the first line break. If there is none, \n is assumed. */ function getLineBreakStyle(sourceFile) { const lineStarts = sourceFile.getLineStarts(); return lineStarts.length === 1 || lineStarts[1] < 2 || sourceFile.text[lineStarts[1] - 2] !== '\r' @@ -503,6 +592,7 @@ exports.getLineBreakStyle = getLineBreakStyle; let cachedScanner; function scanToken(text, languageVersion) { if (cachedScanner === undefined) { + // cache scanner cachedScanner = ts.createScanner(languageVersion, false, undefined, text); } else { @@ -512,6 +602,11 @@ function scanToken(text, languageVersion) { cachedScanner.scan(); return cachedScanner; } +/** + * Determines whether the given text parses as a standalone identifier. + * This is not a guarantee that it works in every context. The property name in PropertyAccessExpressions for example allows reserved words. + * Depending on the context it could be parsed as contextual keyword or TypeScript keyword. + */ function isValidIdentifier(text, languageVersion = ts.ScriptTarget.Latest) { const scan = scanToken(text, languageVersion); return scan.isIdentifier() && scan.getTextPos() === text.length && scan.getTokenPos() === 0; @@ -520,6 +615,9 @@ exports.isValidIdentifier = isValidIdentifier; function charSize(ch) { return ch >= 0x10000 ? 2 : 1; } +/** + * Determines whether the given text can be used to access a property with a PropertyAccessExpression while preserving the property's name. + */ function isValidPropertyAccess(text, languageVersion = ts.ScriptTarget.Latest) { if (text.length === 0) return false; @@ -534,29 +632,45 @@ function isValidPropertyAccess(text, languageVersion = ts.ScriptTarget.Latest) { return true; } exports.isValidPropertyAccess = isValidPropertyAccess; +/** + * Determines whether the given text can be used as unquoted name of a property declaration while preserving the property's name. + */ function isValidPropertyName(text, languageVersion = ts.ScriptTarget.Latest) { if (isValidPropertyAccess(text, languageVersion)) return true; const scan = scanToken(text, languageVersion); return scan.getTextPos() === text.length && - scan.getToken() === ts.SyntaxKind.NumericLiteral && scan.getTokenValue() === text; + scan.getToken() === ts.SyntaxKind.NumericLiteral && scan.getTokenValue() === text; // ensure stringified number equals literal } exports.isValidPropertyName = isValidPropertyName; +/** + * Determines whether the given text can be parsed as a numeric literal. + */ function isValidNumericLiteral(text, languageVersion = ts.ScriptTarget.Latest) { const scan = scanToken(text, languageVersion); return scan.getToken() === ts.SyntaxKind.NumericLiteral && scan.getTextPos() === text.length && scan.getTokenPos() === 0; } exports.isValidNumericLiteral = isValidNumericLiteral; +/** + * Determines whether the given text can be used as JSX tag or attribute name while preserving the exact name. + */ function isValidJsxIdentifier(text, languageVersion = ts.ScriptTarget.Latest) { if (text.length === 0) return false; + let seenNamespaceSeparator = false; let ch = text.codePointAt(0); if (!ts.isIdentifierStart(ch, languageVersion)) return false; for (let i = charSize(ch); i < text.length; i += charSize(ch)) { ch = text.codePointAt(i); - if (!ts.isIdentifierPart(ch, languageVersion) && ch !== 45) - return false; + if (!ts.isIdentifierPart(ch, languageVersion) && ch !== 45 /* minus */) { + if (!seenNamespaceSeparator && ch === 58 /* colon */ && i + charSize(ch) !== text.length) { + seenNamespaceSeparator = true; + } + else { + return false; + } + } } return true; } @@ -577,132 +691,150 @@ var SideEffectOptions; SideEffectOptions[SideEffectOptions["JsxElement"] = 4] = "JsxElement"; })(SideEffectOptions = exports.SideEffectOptions || (exports.SideEffectOptions = {})); function hasSideEffects(node, options) { - switch (node.kind) { - case ts.SyntaxKind.CallExpression: - case ts.SyntaxKind.PostfixUnaryExpression: - case ts.SyntaxKind.AwaitExpression: - case ts.SyntaxKind.YieldExpression: - case ts.SyntaxKind.DeleteExpression: - return true; - case ts.SyntaxKind.TypeAssertionExpression: - case ts.SyntaxKind.AsExpression: - case ts.SyntaxKind.ParenthesizedExpression: - case ts.SyntaxKind.NonNullExpression: - case ts.SyntaxKind.VoidExpression: - case ts.SyntaxKind.TypeOfExpression: - case ts.SyntaxKind.PropertyAccessExpression: - case ts.SyntaxKind.SpreadElement: - case ts.SyntaxKind.PartiallyEmittedExpression: - return hasSideEffects(node.expression, options); - case ts.SyntaxKind.BinaryExpression: - return isAssignmentKind(node.operatorToken.kind) || - hasSideEffects(node.left, options) || - hasSideEffects(node.right, options); - case ts.SyntaxKind.PrefixUnaryExpression: - switch (node.operator) { - case ts.SyntaxKind.PlusPlusToken: - case ts.SyntaxKind.MinusMinusToken: - return true; - default: - return hasSideEffects(node.operand, options); - } - case ts.SyntaxKind.ElementAccessExpression: - return hasSideEffects(node.expression, options) || - node.argumentExpression !== undefined && - hasSideEffects(node.argumentExpression, options); - case ts.SyntaxKind.ConditionalExpression: - return hasSideEffects(node.condition, options) || - hasSideEffects(node.whenTrue, options) || - hasSideEffects(node.whenFalse, options); - case ts.SyntaxKind.NewExpression: - if (options & 2 || hasSideEffects(node.expression, options)) + var _a, _b; + const queue = []; + while (true) { + switch (node.kind) { + case ts.SyntaxKind.CallExpression: + case ts.SyntaxKind.PostfixUnaryExpression: + case ts.SyntaxKind.AwaitExpression: + case ts.SyntaxKind.YieldExpression: + case ts.SyntaxKind.DeleteExpression: return true; - if (node.arguments !== undefined) - for (const child of node.arguments) - if (hasSideEffects(child, options)) + case ts.SyntaxKind.TypeAssertionExpression: + case ts.SyntaxKind.AsExpression: + case ts.SyntaxKind.ParenthesizedExpression: + case ts.SyntaxKind.NonNullExpression: + case ts.SyntaxKind.VoidExpression: + case ts.SyntaxKind.TypeOfExpression: + case ts.SyntaxKind.PropertyAccessExpression: + case ts.SyntaxKind.SpreadElement: + case ts.SyntaxKind.PartiallyEmittedExpression: + node = node.expression; + continue; + case ts.SyntaxKind.BinaryExpression: + if (isAssignmentKind(node.operatorToken.kind)) + return true; + queue.push(node.right); + node = node.left; + continue; + case ts.SyntaxKind.PrefixUnaryExpression: + switch (node.operator) { + case ts.SyntaxKind.PlusPlusToken: + case ts.SyntaxKind.MinusMinusToken: return true; - return false; - case ts.SyntaxKind.TaggedTemplateExpression: - if (options & 1 || hasSideEffects(node.tag, options)) - return true; - if (node.template.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral) - return false; - node = node.template; - case ts.SyntaxKind.TemplateExpression: - for (const child of node.templateSpans) - if (hasSideEffects(child.expression, options)) - return true; - return false; - case ts.SyntaxKind.ClassExpression: - return classExpressionHasSideEffects(node, options); - case ts.SyntaxKind.ArrayLiteralExpression: - for (const child of node.elements) - if (hasSideEffects(child, options)) - return true; - return false; - case ts.SyntaxKind.ObjectLiteralExpression: - for (const child of node.properties) { - if (child.name !== undefined && child.name.kind === ts.SyntaxKind.ComputedPropertyName && - hasSideEffects(child.name.expression, options)) - return true; - switch (child.kind) { - case ts.SyntaxKind.PropertyAssignment: - if (hasSideEffects(child.initializer, options)) - return true; - break; - case ts.SyntaxKind.SpreadAssignment: - if (hasSideEffects(child.expression, options)) - return true; + default: + node = node.operand; + continue; } - } - return false; - case ts.SyntaxKind.JsxExpression: - return node.expression !== undefined && hasSideEffects(node.expression, options); - case ts.SyntaxKind.JsxElement: - case ts.SyntaxKind.JsxFragment: - for (const child of node.children) - if (child.kind !== ts.SyntaxKind.JsxText && hasSideEffects(child, options)) + case ts.SyntaxKind.ElementAccessExpression: + if (node.argumentExpression !== undefined) // for compatibility with typescript@<2.9.0 + queue.push(node.argumentExpression); + node = node.expression; + continue; + case ts.SyntaxKind.ConditionalExpression: + queue.push(node.whenTrue, node.whenFalse); + node = node.condition; + continue; + case ts.SyntaxKind.NewExpression: + if (options & 2 /* Constructor */) return true; - if (node.kind === ts.SyntaxKind.JsxFragment) - return false; - node = node.openingElement; - case ts.SyntaxKind.JsxSelfClosingElement: - case ts.SyntaxKind.JsxOpeningElement: - if (options & 4) - return true; - for (const child of node.attributes.properties) { - if (child.kind === ts.SyntaxKind.JsxSpreadAttribute) { - if (hasSideEffects(child.expression, options)) + if (node.arguments !== undefined) + queue.push(...node.arguments); + node = node.expression; + continue; + case ts.SyntaxKind.TaggedTemplateExpression: + if (options & 1 /* TaggedTemplate */) + return true; + queue.push(node.tag); + node = node.template; + if (node.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral) + break; + // falls through + case ts.SyntaxKind.TemplateExpression: + for (const child of node.templateSpans) + queue.push(child.expression); + break; + case ts.SyntaxKind.ClassExpression: { + if (node.decorators !== undefined) + return true; + for (const child of node.members) { + if (child.decorators !== undefined) return true; + if (!hasModifier(child.modifiers, ts.SyntaxKind.DeclareKeyword)) { + if (((_a = child.name) === null || _a === void 0 ? void 0 : _a.kind) === ts.SyntaxKind.ComputedPropertyName) + queue.push(child.name.expression); + if (node_1.isMethodDeclaration(child)) { + for (const p of child.parameters) + if (p.decorators !== undefined) + return true; + } + else if (node_1.isPropertyDeclaration(child) && + child.initializer !== undefined && + hasModifier(child.modifiers, ts.SyntaxKind.StaticKeyword)) { + queue.push(child.initializer); + } + } } - else if (child.initializer !== undefined && hasSideEffects(child.initializer, options)) { - return true; - } + const base = getBaseOfClassLikeExpression(node); + if (base === undefined) + break; + node = base.expression; + continue; } - return false; - case ts.SyntaxKind.CommaListExpression: - for (const child of node.elements) - if (hasSideEffects(child, options)) + case ts.SyntaxKind.ArrayLiteralExpression: + queue.push(...node.elements); + break; + case ts.SyntaxKind.ObjectLiteralExpression: + for (const child of node.properties) { + if (((_b = child.name) === null || _b === void 0 ? void 0 : _b.kind) === ts.SyntaxKind.ComputedPropertyName) + queue.push(child.name.expression); + switch (child.kind) { + case ts.SyntaxKind.PropertyAssignment: + queue.push(child.initializer); + break; + case ts.SyntaxKind.SpreadAssignment: + queue.push(child.expression); + } + } + break; + case ts.SyntaxKind.JsxExpression: + if (node.expression === undefined) + break; + node = node.expression; + continue; + case ts.SyntaxKind.JsxElement: + case ts.SyntaxKind.JsxFragment: + for (const child of node.children) + if (child.kind !== ts.SyntaxKind.JsxText) + queue.push(child); + if (node.kind === ts.SyntaxKind.JsxFragment) + break; + node = node.openingElement; + // falls through + case ts.SyntaxKind.JsxSelfClosingElement: + case ts.SyntaxKind.JsxOpeningElement: + if (options & 4 /* JsxElement */) return true; + for (const child of node.attributes.properties) { + if (child.kind === ts.SyntaxKind.JsxSpreadAttribute) { + queue.push(child.expression); + } + else if (child.initializer !== undefined) { + queue.push(child.initializer); + } + } + break; + case ts.SyntaxKind.CommaListExpression: + queue.push(...node.elements); + } + if (queue.length === 0) return false; - default: - return false; + node = queue.pop(); } } exports.hasSideEffects = hasSideEffects; -function classExpressionHasSideEffects(node, options) { - if (node.heritageClauses !== undefined && node.heritageClauses[0].token === ts.SyntaxKind.ExtendsKeyword) - for (const base of node.heritageClauses[0].types) - if (hasSideEffects(base.expression, options)) - return true; - for (const child of node.members) - if (child.name !== undefined && child.name.kind === ts.SyntaxKind.ComputedPropertyName && - hasSideEffects(child.name.expression, options) || - node_1.isPropertyDeclaration(child) && child.initializer !== undefined && - hasSideEffects(child.initializer, options)) - return true; - return false; -} +/** Returns the VariableDeclaration or ParameterDeclaration that contains the BindingElement */ function getDeclarationOfBindingElement(node) { let parent = node.parent.parent; while (parent.kind === ts.SyntaxKind.BindingElement) @@ -768,7 +900,7 @@ function isExpressionValueUsed(node) { case ts.SyntaxKind.PrefixUnaryExpression: case ts.SyntaxKind.NonNullExpression: node = parent; - break; + continue; case ts.SyntaxKind.ForStatement: return parent.condition === node; case ts.SyntaxKind.ForInStatement: @@ -827,7 +959,11 @@ function isExpressionValueUsed(node) { case ts.SyntaxKind.CaretToken: case ts.SyntaxKind.BarBarToken: case ts.SyntaxKind.AmpersandAmpersandToken: + case ts.SyntaxKind.QuestionQuestionToken: case ts.SyntaxKind.InKeyword: + case ts.SyntaxKind.QuestionQuestionEqualsToken: + case ts.SyntaxKind.AmpersandAmpersandEqualsToken: + case ts.SyntaxKind.BarBarEqualsToken: return true; default: node = parent; @@ -844,6 +980,7 @@ function isInDestructuringAssignment(node) { case ts.SyntaxKind.ShorthandPropertyAssignment: if (node.objectAssignmentInitializer !== undefined) return true; + // falls through case ts.SyntaxKind.PropertyAssignment: case ts.SyntaxKind.SpreadAssignment: node = node.parent; @@ -891,55 +1028,56 @@ function getAccessKind(node) { const parent = node.parent; switch (parent.kind) { case ts.SyntaxKind.DeleteExpression: - return 4; + return 4 /* Delete */; case ts.SyntaxKind.PostfixUnaryExpression: - return 3; + return 3 /* ReadWrite */; case ts.SyntaxKind.PrefixUnaryExpression: return parent.operator === ts.SyntaxKind.PlusPlusToken || parent.operator === ts.SyntaxKind.MinusMinusToken - ? 3 - : 1; + ? 3 /* ReadWrite */ + : 1 /* Read */; case ts.SyntaxKind.BinaryExpression: return parent.right === node - ? 1 + ? 1 /* Read */ : !isAssignmentKind(parent.operatorToken.kind) - ? 1 + ? 1 /* Read */ : parent.operatorToken.kind === ts.SyntaxKind.EqualsToken - ? 2 - : 3; + ? 2 /* Write */ + : 3 /* ReadWrite */; case ts.SyntaxKind.ShorthandPropertyAssignment: return parent.objectAssignmentInitializer === node - ? 1 + ? 1 /* Read */ : isInDestructuringAssignment(parent) - ? 2 - : 1; + ? 2 /* Write */ + : 1 /* Read */; case ts.SyntaxKind.PropertyAssignment: return parent.name === node - ? 0 + ? 0 /* None */ : isInDestructuringAssignment(parent) - ? 2 - : 1; + ? 2 /* Write */ + : 1 /* Read */; case ts.SyntaxKind.ArrayLiteralExpression: case ts.SyntaxKind.SpreadElement: case ts.SyntaxKind.SpreadAssignment: return isInDestructuringAssignment(parent) - ? 2 - : 1; + ? 2 /* Write */ + : 1 /* Read */; case ts.SyntaxKind.ParenthesizedExpression: case ts.SyntaxKind.NonNullExpression: case ts.SyntaxKind.TypeAssertionExpression: case ts.SyntaxKind.AsExpression: + // (foo! as {})++ return getAccessKind(parent); case ts.SyntaxKind.ForOfStatement: case ts.SyntaxKind.ForInStatement: return parent.initializer === node - ? 2 - : 1; + ? 2 /* Write */ + : 1 /* Read */; case ts.SyntaxKind.ExpressionWithTypeArguments: return parent.parent.token === ts.SyntaxKind.ExtendsKeyword && parent.parent.parent.kind !== ts.SyntaxKind.InterfaceDeclaration - ? 1 - : 0; + ? 1 /* Read */ + : 0 /* None */; case ts.SyntaxKind.ComputedPropertyName: case ts.SyntaxKind.ExpressionStatement: case ts.SyntaxKind.TypeOfExpression: @@ -967,11 +1105,11 @@ function getAccessKind(node) { case ts.SyntaxKind.ConditionalExpression: case ts.SyntaxKind.CaseClause: case ts.SyntaxKind.JsxElement: - return 1; + return 1 /* Read */; case ts.SyntaxKind.ArrowFunction: return parent.body === node - ? 1 - : 2; + ? 1 /* Read */ + : 2 /* Write */; case ts.SyntaxKind.PropertyDeclaration: case ts.SyntaxKind.VariableDeclaration: case ts.SyntaxKind.Parameter: @@ -979,22 +1117,22 @@ function getAccessKind(node) { case ts.SyntaxKind.BindingElement: case ts.SyntaxKind.JsxAttribute: return parent.initializer === node - ? 1 - : 0; + ? 1 /* Read */ + : 0 /* None */; case ts.SyntaxKind.PropertyAccessExpression: return parent.expression === node - ? 1 - : 0; + ? 1 /* Read */ + : 0 /* None */; case ts.SyntaxKind.ExportAssignment: return parent.isExportEquals - ? 1 - : 0; + ? 1 /* Read */ + : 0 /* None */; } - return 0; + return 0 /* None */; } exports.getAccessKind = getAccessKind; function isReassignmentTarget(node) { - return (getAccessKind(node) & 2) !== 0; + return (getAccessKind(node) & 2 /* Write */) !== 0; } exports.isReassignmentTarget = isReassignmentTarget; function canHaveJsDoc(node) { @@ -1011,10 +1149,10 @@ function canHaveJsDoc(node) { case ts.SyntaxKind.ShorthandPropertyAssignment: case ts.SyntaxKind.PropertyAssignment: case ts.SyntaxKind.FunctionExpression: - case ts.SyntaxKind.FunctionDeclaration: case ts.SyntaxKind.LabeledStatement: case ts.SyntaxKind.ExpressionStatement: case ts.SyntaxKind.VariableStatement: + case ts.SyntaxKind.FunctionDeclaration: case ts.SyntaxKind.Constructor: case ts.SyntaxKind.MethodDeclaration: case ts.SyntaxKind.PropertyDeclaration: @@ -1028,21 +1166,24 @@ function canHaveJsDoc(node) { case ts.SyntaxKind.EnumDeclaration: case ts.SyntaxKind.ModuleDeclaration: case ts.SyntaxKind.ImportEqualsDeclaration: + case ts.SyntaxKind.ImportDeclaration: + case ts.SyntaxKind.NamespaceExportDeclaration: + case ts.SyntaxKind.ExportAssignment: case ts.SyntaxKind.IndexSignature: case ts.SyntaxKind.FunctionType: case ts.SyntaxKind.ConstructorType: case ts.SyntaxKind.JSDocFunctionType: - case ts.SyntaxKind.EndOfFileToken: case ts.SyntaxKind.ExportDeclaration: + case ts.SyntaxKind.NamedTupleMember: + case ts.SyntaxKind.EndOfFileToken: return true; default: return false; } } exports.canHaveJsDoc = canHaveJsDoc; +/** Gets the JSDoc of a node. For performance reasons this function should only be called when `canHaveJsDoc` returns true. */ function getJsDoc(node, sourceFile) { - if (node.kind === ts.SyntaxKind.EndOfFileToken) - return parseJsDocWorker(node, sourceFile || node.parent); const result = []; for (const child of node.getChildren(sourceFile)) { if (!node_1.isJsDoc(child)) @@ -1052,20 +1193,27 @@ function getJsDoc(node, sourceFile) { return result; } exports.getJsDoc = getJsDoc; +/** + * Parses the JsDoc of any node. This function is made for nodes that don't get their JsDoc parsed by the TypeScript parser. + * + * @param considerTrailingComments When set to `true` this function uses the trailing comments if the node starts on the same line + * as the previous node ends. + */ function parseJsDocOfNode(node, considerTrailingComments, sourceFile = node.getSourceFile()) { if (canHaveJsDoc(node) && node.kind !== ts.SyntaxKind.EndOfFileToken) { const result = getJsDoc(node, sourceFile); if (result.length !== 0 || !considerTrailingComments) return result; } - return parseJsDocWorker(node, sourceFile, considerTrailingComments); + return parseJsDocWorker(node, node.getStart(sourceFile), sourceFile, considerTrailingComments); } exports.parseJsDocOfNode = parseJsDocOfNode; -function parseJsDocWorker(node, sourceFile, considerTrailingComments) { - const nodeStart = node.getStart(sourceFile); +function parseJsDocWorker(node, nodeStart, sourceFile, considerTrailingComments) { const start = ts[considerTrailingComments && isSameLine(sourceFile, node.pos, nodeStart) ? 'forEachTrailingCommentRange' - : 'forEachLeadingCommentRange'](sourceFile.text, node.pos, (pos, _end, kind) => kind === ts.SyntaxKind.MultiLineCommentTrivia && sourceFile.text[pos + 2] === '*' ? { pos } : undefined); + : 'forEachLeadingCommentRange'](sourceFile.text, node.pos, + // return object to make `0` a truthy value + (pos, _end, kind) => kind === ts.SyntaxKind.MultiLineCommentTrivia && sourceFile.text[pos + 2] === '*' ? { pos } : undefined); if (start === undefined) return []; const startPos = start.pos; @@ -1100,12 +1248,14 @@ var ImportKind; ImportKind[ImportKind["AllStaticImports"] = 3] = "AllStaticImports"; ImportKind[ImportKind["AllImportExpressions"] = 24] = "AllImportExpressions"; ImportKind[ImportKind["AllRequireLike"] = 18] = "AllRequireLike"; + // @internal ImportKind[ImportKind["AllNestedImports"] = 56] = "AllNestedImports"; + // @internal ImportKind[ImportKind["AllTopLevelImports"] = 7] = "AllTopLevelImports"; })(ImportKind = exports.ImportKind || (exports.ImportKind = {})); -function findImports(sourceFile, kinds) { +function findImports(sourceFile, kinds, ignoreFileName = true) { const result = []; - for (const node of findImportLikeNodes(sourceFile, kinds)) { + for (const node of findImportLikeNodes(sourceFile, kinds, ignoreFileName)) { switch (node.kind) { case ts.SyntaxKind.ImportDeclaration: addIfTextualLiteral(node.moduleSpecifier); @@ -1134,38 +1284,39 @@ function findImports(sourceFile, kinds) { } } exports.findImports = findImports; -function findImportLikeNodes(sourceFile, kinds) { - return new ImportFinder(sourceFile, kinds).find(); +function findImportLikeNodes(sourceFile, kinds, ignoreFileName = true) { + return new ImportFinder(sourceFile, kinds, ignoreFileName).find(); } exports.findImportLikeNodes = findImportLikeNodes; class ImportFinder { - constructor(_sourceFile, _options) { + constructor(_sourceFile, _options, _ignoreFileName) { this._sourceFile = _sourceFile; this._options = _options; + this._ignoreFileName = _ignoreFileName; this._result = []; } find() { if (this._sourceFile.isDeclarationFile) - this._options &= ~24; - if (this._options & 7) + this._options &= ~24 /* AllImportExpressions */; + if (this._options & 7 /* AllTopLevelImports */) this._findImports(this._sourceFile.statements); - if (this._options & 56) + if (this._options & 56 /* AllNestedImports */) this._findNestedImports(); return this._result; } _findImports(statements) { for (const statement of statements) { if (node_1.isImportDeclaration(statement)) { - if (this._options & 1) + if (this._options & 1 /* ImportDeclaration */) this._result.push(statement); } else if (node_1.isImportEqualsDeclaration(statement)) { - if (this._options & 2 && + if (this._options & 2 /* ImportEquals */ && statement.moduleReference.kind === ts.SyntaxKind.ExternalModuleReference) this._result.push(statement); } else if (node_1.isExportDeclaration(statement)) { - if (statement.moduleSpecifier !== undefined && this._options & 4) + if (statement.moduleSpecifier !== undefined && this._options & 4 /* ExportFrom */) this._result.push(statement); } else if (node_1.isModuleDeclaration(statement)) { @@ -1181,19 +1332,27 @@ class ImportFinder { this._findImports(declaration.body.statements); } _findNestedImports() { + const isJavaScriptFile = this._ignoreFileName || (this._sourceFile.flags & ts.NodeFlags.JavaScriptFile) !== 0; let re; - if ((this._options & 56) === 16) { + let includeJsDoc; + if ((this._options & 56 /* AllNestedImports */) === 16 /* Require */) { + if (!isJavaScriptFile) + return; // don't look for 'require' in TS files re = /\brequire\s*[ 1) this._result.push(token.parent); } } @@ -1216,12 +1375,17 @@ class ImportFinder { } } } +/** + * Ambient context means the statement itself has the `declare` keyword + * or is inside a `declare namespace`, `delcare module` or `declare global`. + */ function isStatementInAmbientContext(node) { while (node.flags & ts.NodeFlags.NestedNamespace) node = node.parent; return hasModifier(node.modifiers, ts.SyntaxKind.DeclareKeyword) || isAmbientModuleBlock(node.parent); } exports.isStatementInAmbientContext = isStatementInAmbientContext; +/** Includes `declare namespace`, `declare module` and `declare global` and namespace nested in one of the aforementioned. */ function isAmbientModuleBlock(node) { while (node.kind === ts.SyntaxKind.ModuleBlock) { do @@ -1246,10 +1410,19 @@ function isStrictCompilerOptionEnabled(options, option) { (option !== 'strictPropertyInitialization' || isStrictCompilerOptionEnabled(options, 'strictNullChecks')); } exports.isStrictCompilerOptionEnabled = isStrictCompilerOptionEnabled; +// https://github.com/ajafff/tslint-consistent-codestyle/issues/85 +/** + * Checks if a given compiler option is enabled. + * It handles dependencies of options, e.g. `declaration` is implicitly enabled by `composite` or `strictNullChecks` is enabled by `strict`. + * However, it does not check dependencies that are already checked and reported as errors, e.g. `checkJs` without `allowJs`. + * This function only handles boolean flags. + */ function isCompilerOptionEnabled(options, option) { switch (option) { case 'stripInternal': - return options.stripInternal === true && isCompilerOptionEnabled(options, 'declaration'); + case 'declarationMap': + case 'emitDeclarationOnly': + return options[option] === true && isCompilerOptionEnabled(options, 'declaration'); case 'declaration': return options.declaration || isCompilerOptionEnabled(options, 'composite'); case 'incremental': @@ -1262,6 +1435,10 @@ function isCompilerOptionEnabled(options, option) { return options.allowSyntheticDefaultImports !== undefined ? options.allowSyntheticDefaultImports : isCompilerOptionEnabled(options, 'esModuleInterop') || options.module === ts.ModuleKind.System; + case 'noUncheckedIndexedAccess': + return options.noUncheckedIndexedAccess === true && isCompilerOptionEnabled(options, 'strictNullChecks'); + case 'allowJs': + return options.allowJs === undefined ? isCompilerOptionEnabled(options, 'checkJs') : options.allowJs; case 'noImplicitAny': case 'noImplicitThis': case 'strictNullChecks': @@ -1274,12 +1451,27 @@ function isCompilerOptionEnabled(options, option) { return options[option] === true; } exports.isCompilerOptionEnabled = isCompilerOptionEnabled; +/** + * Has nothing to do with `isAmbientModuleBlock`. + * + * @returns `true` if it's a global augmentation or has a string name. + */ function isAmbientModule(node) { return node.name.kind === ts.SyntaxKind.StringLiteral || (node.flags & ts.NodeFlags.GlobalAugmentation) !== 0; } exports.isAmbientModule = isAmbientModule; +/** + * @deprecated use `getTsCheckDirective` instead since `// @ts-nocheck` is no longer restricted to JS files. + * @returns the last `// @ts-check` or `// @ts-nocheck` directive in the given file. + */ function getCheckJsDirective(source) { + return getTsCheckDirective(source); +} +exports.getCheckJsDirective = getCheckJsDirective; +/** @returns the last `// @ts-check` or `// @ts-nocheck` directive in the given file. */ +function getTsCheckDirective(source) { let directive; + // needs to work around a shebang issue until https://github.com/Microsoft/TypeScript/issues/28477 is resolved ts.forEachLeadingCommentRange(source, (ts.getShebang(source) || '').length, (pos, end, kind) => { if (kind === ts.SyntaxKind.SingleLineCommentTrivia) { const text = source.slice(pos, end); @@ -1290,13 +1482,14 @@ function getCheckJsDirective(source) { }); return directive; } -exports.getCheckJsDirective = getCheckJsDirective; +exports.getTsCheckDirective = getTsCheckDirective; function isConstAssertion(node) { return node_1.isTypeReferenceNode(node.type) && node.type.typeName.kind === ts.SyntaxKind.Identifier && node.type.typeName.escapedText === 'const'; } exports.isConstAssertion = isConstAssertion; +/** Detects whether an expression is affected by an enclosing 'as const' assertion and therefore treated literally. */ function isInConstContext(node) { let current = node; while (true) { @@ -1327,6 +1520,7 @@ function isInConstContext(node) { case ts.SyntaxKind.ParenthesizedExpression: case ts.SyntaxKind.ArrayLiteralExpression: case ts.SyntaxKind.ObjectLiteralExpression: + case ts.SyntaxKind.TemplateExpression: current = parent; break; default: @@ -1335,6 +1529,7 @@ function isInConstContext(node) { } } exports.isInConstContext = isInConstContext; +/** Returns true for `Object.defineProperty(o, 'prop', {value, writable: false})` and `Object.defineProperty(o, 'prop', {get: () => 1})`*/ function isReadonlyAssignmentDeclaration(node, checker) { if (!isBindableObjectDefinePropertyCall(node)) return false; @@ -1350,6 +1545,7 @@ function isReadonlyAssignmentDeclaration(node, checker) { return type_1.isBooleanLiteralType(writableType, false); } exports.isReadonlyAssignmentDeclaration = isReadonlyAssignmentDeclaration; +/** Determines whether a call to `Object.defineProperty` is statically analyzable. */ function isBindableObjectDefinePropertyCall(node) { return node.arguments.length === 3 && node_1.isEntityNameExpression(node.arguments[0]) && @@ -1401,13 +1597,18 @@ function getLateBoundPropertyNamesOfPropertyName(node, checker) { const staticName = getPropertyName(node); return staticName !== undefined ? { known: true, names: [{ displayName: staticName, symbolName: ts.escapeLeadingUnderscores(staticName) }] } - : getLateBoundPropertyNames(node.expression, checker); + : node.kind === ts.SyntaxKind.PrivateIdentifier + ? { known: true, names: [{ displayName: node.text, symbolName: checker.getSymbolAtLocation(node).escapedName }] } + : getLateBoundPropertyNames(node.expression, checker); } exports.getLateBoundPropertyNamesOfPropertyName = getLateBoundPropertyNamesOfPropertyName; +/** Most declarations demand there to be only one statically known name, e.g. class members with computed name. */ function getSingleLateBoundPropertyNameOfPropertyName(node, checker) { const staticName = getPropertyName(node); if (staticName !== undefined) return { displayName: staticName, symbolName: ts.escapeLeadingUnderscores(staticName) }; + if (node.kind === ts.SyntaxKind.PrivateIdentifier) + return { displayName: node.text, symbolName: checker.getSymbolAtLocation(node).escapedName }; const { expression } = node; return isWellKnownSymbolLiterally(expression) ? getPropertyNameOfWellKnownSymbol(expression) @@ -1420,3 +1621,64 @@ function unwrapParentheses(node) { return node; } exports.unwrapParentheses = unwrapParentheses; +function formatPseudoBigInt(v) { + return `${v.negative ? '-' : ''}${v.base10Value}n`; +} +exports.formatPseudoBigInt = formatPseudoBigInt; +/** + * Determines whether the given `SwitchStatement`'s `case` clauses cover every possible value of the switched expression. + * The logic is the same as TypeScript's control flow analysis. + * This does **not** check whether all `case` clauses do a certain action like assign a variable or return a value. + * This function ignores the `default` clause if present. + */ +function hasExhaustiveCaseClauses(node, checker) { + const caseClauses = node.caseBlock.clauses.filter(node_1.isCaseClause); + if (caseClauses.length === 0) + return false; + const typeParts = type_1.unionTypeParts(checker.getTypeAtLocation(node.expression)); + if (typeParts.length > caseClauses.length) + return false; + const types = new Set(typeParts.map(getPrimitiveLiteralFromType)); + if (types.has(undefined)) + return false; + const seen = new Set(); + for (const clause of caseClauses) { + const expressionType = checker.getTypeAtLocation(clause.expression); + if (exports.isTypeFlagSet(expressionType, ts.TypeFlags.Never)) + continue; // additional case clause with 'never' is always allowed + const type = getPrimitiveLiteralFromType(expressionType); + if (types.has(type)) { + seen.add(type); + } + else if (type !== 'null' && type !== 'undefined') { // additional case clauses with 'null' and 'undefined' are always allowed + return false; + } + } + return types.size === seen.size; +} +exports.hasExhaustiveCaseClauses = hasExhaustiveCaseClauses; +function getPrimitiveLiteralFromType(t) { + if (exports.isTypeFlagSet(t, ts.TypeFlags.Null)) + return 'null'; + if (exports.isTypeFlagSet(t, ts.TypeFlags.Undefined)) + return 'undefined'; + if (exports.isTypeFlagSet(t, ts.TypeFlags.NumberLiteral)) + return `${exports.isTypeFlagSet(t, ts.TypeFlags.EnumLiteral) ? 'enum:' : ''}${t.value}`; + if (exports.isTypeFlagSet(t, ts.TypeFlags.StringLiteral)) + return `${exports.isTypeFlagSet(t, ts.TypeFlags.EnumLiteral) ? 'enum:' : ''}string:${t.value}`; + if (exports.isTypeFlagSet(t, ts.TypeFlags.BigIntLiteral)) + return formatPseudoBigInt(t.value); + if (_3_2_1.isUniqueESSymbolType(t)) + return t.escapedName; + if (type_1.isBooleanLiteralType(t, true)) + return 'true'; + if (type_1.isBooleanLiteralType(t, false)) + return 'false'; +} +function getBaseOfClassLikeExpression(node) { + var _a; + if (((_a = node.heritageClauses) === null || _a === void 0 ? void 0 : _a[0].token) === ts.SyntaxKind.ExtendsKeyword) + return node.heritageClauses[0].types[0]; +} +exports.getBaseOfClassLikeExpression = getBaseOfClassLikeExpression; +//# sourceMappingURL=util.js.map \ No newline at end of file diff --git a/node_modules/tsutils/util/util.js.map b/node_modules/tsutils/util/util.js.map new file mode 100644 index 0000000000..f5e0aeda1f --- /dev/null +++ b/node_modules/tsutils/util/util.js.map @@ -0,0 +1 @@ +{"version":3,"file":"util.js","sourceRoot":"","sources":["util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index d4a87391da..7ab759919b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -899,9 +899,9 @@ "dev": true }, "@types/json-schema": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz", - "integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==", + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", + "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", "dev": true }, "@types/json5": { @@ -1009,101 +1009,107 @@ } }, "@typescript-eslint/eslint-plugin": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.9.0.tgz", - "integrity": "sha512-WrVzGMzzCrgrpnQMQm4Tnf+dk+wdl/YbgIgd5hKGa2P+lnJ2MON+nQnbwgbxtN9QDLi8HO+JAq0/krMnjQK6Cw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.15.0.tgz", + "integrity": "sha512-DJgdGZW+8CFUTz5C/dnn4ONcUm2h2T0itWD85Ob5/V27Ndie8hUoX5HKyGssvR8sUMkAIlUc/AMK67Lqa3kBIQ==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.9.0", - "@typescript-eslint/scope-manager": "4.9.0", + "@typescript-eslint/experimental-utils": "4.15.0", + "@typescript-eslint/scope-manager": "4.15.0", "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", + "lodash": "^4.17.15", "regexpp": "^3.0.0", "semver": "^7.3.2", "tsutils": "^3.17.1" }, "dependencies": { "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", - "dev": true + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } } } }, "@typescript-eslint/experimental-utils": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.9.0.tgz", - "integrity": "sha512-0p8GnDWB3R2oGhmRXlEnCvYOtaBCijtA5uBfH5GxQKsukdSQyI4opC4NGTUb88CagsoNQ4rb/hId2JuMbzWKFQ==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.15.0.tgz", + "integrity": "sha512-V4vaDWvxA2zgesg4KPgEGiomWEBpJXvY4ZX34Y3qxK8LUm5I87L+qGIOTd9tHZOARXNRt9pLbblSKiYBlGMawg==", "dev": true, "requires": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.9.0", - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/typescript-estree": "4.9.0", + "@typescript-eslint/scope-manager": "4.15.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/typescript-estree": "4.15.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" } }, "@typescript-eslint/parser": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.9.0.tgz", - "integrity": "sha512-QRSDAV8tGZoQye/ogp28ypb8qpsZPV6FOLD+tbN4ohKUWHD2n/u0Q2tIBnCsGwQCiD94RdtLkcqpdK4vKcLCCw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.15.0.tgz", + "integrity": "sha512-L6Dtbq8Bc7g2aZwnIBETpmUa9XDKCMzKVwAArnGp5Mn7PRNFjf3mUzq8UeBjL3K8t311hvevnyqXAMSmxO8Gpg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.9.0", - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/typescript-estree": "4.9.0", + "@typescript-eslint/scope-manager": "4.15.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/typescript-estree": "4.15.0", "debug": "^4.1.1" } }, "@typescript-eslint/scope-manager": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.9.0.tgz", - "integrity": "sha512-q/81jtmcDtMRE+nfFt5pWqO0R41k46gpVLnuefqVOXl4QV1GdQoBWfk5REcipoJNQH9+F5l+dwa9Li5fbALjzg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.15.0.tgz", + "integrity": "sha512-CSNBZnCC2jEA/a+pR9Ljh8Y+5TY5qgbPz7ICEk9WCpSEgT6Pi7H2RIjxfrrbUXvotd6ta+i27sssKEH8Azm75g==", "dev": true, "requires": { - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/visitor-keys": "4.9.0" + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0" } }, "@typescript-eslint/types": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.9.0.tgz", - "integrity": "sha512-luzLKmowfiM/IoJL/rus1K9iZpSJK6GlOS/1ezKplb7MkORt2dDcfi8g9B0bsF6JoRGhqn0D3Va55b+vredFHA==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.15.0.tgz", + "integrity": "sha512-su4RHkJhS+iFwyqyXHcS8EGPlUVoC+XREfy5daivjLur9JP8GhvTmDipuRpcujtGC4M+GYhUOJCPDE3rC5NJrg==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.9.0.tgz", - "integrity": "sha512-rmDR++PGrIyQzAtt3pPcmKWLr7MA+u/Cmq9b/rON3//t5WofNR4m/Ybft2vOLj0WtUzjn018ekHjTsnIyBsQug==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.15.0.tgz", + "integrity": "sha512-jG6xTmcNbi6xzZq0SdWh7wQ9cMb2pqXaUp6bUZOMsIlu5aOlxGxgE/t6L/gPybybQGvdguajXGkZKSndZJpksA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.9.0", - "@typescript-eslint/visitor-keys": "4.9.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", - "lodash": "^4.17.15", "semver": "^7.3.2", "tsutils": "^3.17.1" }, "dependencies": { "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", - "dev": true + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } } } }, "@typescript-eslint/visitor-keys": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.9.0.tgz", - "integrity": "sha512-sV45zfdRqQo1A97pOSx3fsjR+3blmwtdCt8LDrXgCX36v4Vmz4KHrhpV6Fo2cRdXmyumxx11AHw0pNJqCNpDyg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.15.0.tgz", + "integrity": "sha512-RnDtJwOwFucWFAMjG3ghCG/ikImFJFEg20DI7mn4pHEx3vC48lIAoyjhffvfHmErRDboUPC7p9Z2il4CLb7qxA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.9.0", + "@typescript-eslint/types": "4.15.0", "eslint-visitor-keys": "^2.0.0" }, "dependencies": { @@ -6510,9 +6516,9 @@ "dev": true }, "tsutils": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz", - "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==", + "version": "3.20.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.20.0.tgz", + "integrity": "sha512-RYbuQuvkhuqVeXweWT3tJLKOEJ/UUw9GjNEZGWdrLLlM+611o1gwLHBpxoFJKKl25fLprp2eVthtKs5JOrNeXg==", "dev": true, "requires": { "tslib": "^1.8.1" diff --git a/scripts/deps/manage_node_deps.py b/scripts/deps/manage_node_deps.py index 52060824a6..44af396a3d 100755 --- a/scripts/deps/manage_node_deps.py +++ b/scripts/deps/manage_node_deps.py @@ -44,8 +44,8 @@ DEPS = { "@types/filesystem": "0.0.29", "@types/mocha": "8.2.0", "@types/sinon": "9.0.10", - "@typescript-eslint/parser": "4.9.0", - "@typescript-eslint/eslint-plugin": "4.9.0", + "@typescript-eslint/parser": "4.15.0", + "@typescript-eslint/eslint-plugin": "4.15.0", "bl": "4.0.3", "chai": "4.2.0", "escodegen": "2.0.0",