From 643f2cb7e80528aeda39121deffeff18492db372 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Sat, 17 Dec 2022 18:26:25 -0500 Subject: [PATCH] fix(ast-spec): change MemberExpression.object to Expression --- packages/ast-spec/src/expression/MemberExpression/spec.ts | 3 +-- packages/eslint-plugin/src/rules/no-unnecessary-condition.ts | 4 +--- .../eslint-plugin/src/rules/prefer-string-starts-ends-with.ts | 2 +- .../eslint-plugin/src/rules/require-array-sort-compare.ts | 3 +-- 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/packages/ast-spec/src/expression/MemberExpression/spec.ts b/packages/ast-spec/src/expression/MemberExpression/spec.ts index 260574cc59f9..a0a7cc65a33d 100644 --- a/packages/ast-spec/src/expression/MemberExpression/spec.ts +++ b/packages/ast-spec/src/expression/MemberExpression/spec.ts @@ -2,11 +2,10 @@ import type { AST_NODE_TYPES } from '../../ast-node-types'; import type { BaseNode } from '../../base/BaseNode'; import type { PrivateIdentifier } from '../../special/PrivateIdentifier/spec'; import type { Expression } from '../../unions/Expression'; -import type { LeftHandSideExpression } from '../../unions/LeftHandSideExpression'; import type { Identifier } from '../Identifier/spec'; interface MemberExpressionBase extends BaseNode { - object: LeftHandSideExpression; + object: Expression; property: Expression | Identifier | PrivateIdentifier; computed: boolean; optional: boolean; diff --git a/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts b/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts index 030ed4fe1886..5a6872f57484 100644 --- a/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts +++ b/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts @@ -568,9 +568,7 @@ export default createRule({ return false; } - function isOptionableExpression( - node: TSESTree.LeftHandSideExpression, - ): boolean { + function isOptionableExpression(node: TSESTree.Expression): boolean { const type = getNodeType(node); const isOwnNullable = node.type === AST_NODE_TYPES.MemberExpression diff --git a/packages/eslint-plugin/src/rules/prefer-string-starts-ends-with.ts b/packages/eslint-plugin/src/rules/prefer-string-starts-ends-with.ts index f0949acd16cd..31a570652dcb 100644 --- a/packages/eslint-plugin/src/rules/prefer-string-starts-ends-with.ts +++ b/packages/eslint-plugin/src/rules/prefer-string-starts-ends-with.ts @@ -47,7 +47,7 @@ export default createRule({ * Check if a given node is a string. * @param node The node to check. */ - function isStringType(node: TSESTree.LeftHandSideExpression): boolean { + function isStringType(node: TSESTree.Expression): boolean { const objectType = typeChecker.getTypeAtLocation( service.esTreeNodeToTSNodeMap.get(node), ); diff --git a/packages/eslint-plugin/src/rules/require-array-sort-compare.ts b/packages/eslint-plugin/src/rules/require-array-sort-compare.ts index b37490abc5ab..8027cace1d5b 100644 --- a/packages/eslint-plugin/src/rules/require-array-sort-compare.ts +++ b/packages/eslint-plugin/src/rules/require-array-sort-compare.ts @@ -48,9 +48,8 @@ export default util.createRule({ /** * Check if a given node is an array which all elements are string. - * @param node */ - function isStringArrayNode(node: TSESTree.LeftHandSideExpression): boolean { + function isStringArrayNode(node: TSESTree.Expression): boolean { const type = checker.getTypeAtLocation( service.esTreeNodeToTSNodeMap.get(node), );