Skip to content

Commit dc89357

Browse files
committed
feat!: migrate to eslint v9 apis
1 parent 37ce87c commit dc89357

File tree

6 files changed

+690
-410
lines changed

6 files changed

+690
-410
lines changed

packages/eslint-plugin-query/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,11 @@
4646
"src"
4747
],
4848
"dependencies": {
49-
"@typescript-eslint/utils": "^6.20.0"
49+
"@typescript-eslint/utils": "^7.6.0"
5050
},
5151
"devDependencies": {
52-
"@typescript-eslint/rule-tester": "^6.20.0",
53-
"eslint": "^8.56.0"
52+
"@typescript-eslint/rule-tester": "^7.6.0",
53+
"eslint": "^9.0.0"
5454
},
5555
"peerDependencies": {
5656
"eslint": "^8.0.0 || ^9.0.0"

packages/eslint-plugin-query/src/rules/exhaustive-deps/exhaustive-deps.rule.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ export const rule = createRule({
8383
}
8484
}
8585

86-
const sourceCode = context.getSourceCode()
86+
const sourceCode = context.sourceCode
8787
const queryKeyValue = queryKeyNode
8888
const externalRefs = ASTUtils.getExternalRefs({
8989
scopeManager,
@@ -93,9 +93,10 @@ export const rule = createRule({
9393

9494
const relevantRefs = externalRefs.filter((reference) =>
9595
ExhaustiveDepsUtils.isRelevantReference({
96-
context,
96+
sourceCode,
9797
reference,
9898
scopeManager,
99+
node: queryFn.value,
99100
}),
100101
)
101102

packages/eslint-plugin-query/src/rules/exhaustive-deps/exhaustive-deps.utils.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
import { AST_NODE_TYPES } from '@typescript-eslint/utils'
22
import { ASTUtils } from '../../utils/ast-utils'
3-
import type { TSESLint } from '@typescript-eslint/utils'
3+
import type { TSESLint, TSESTree } from '@typescript-eslint/utils'
44

55
export const ExhaustiveDepsUtils = {
66
isRelevantReference(params: {
7-
context: Readonly<TSESLint.RuleContext<string, ReadonlyArray<unknown>>>
7+
sourceCode: Readonly<TSESLint.SourceCode>
88
reference: TSESLint.Scope.Reference
99
scopeManager: TSESLint.Scope.ScopeManager
10+
node: TSESTree.Node
1011
}) {
11-
const { reference, scopeManager, context } = params
12-
const component = ASTUtils.getFunctionAncestor(context)
12+
const { reference, scopeManager, sourceCode, node } = params
13+
const component = ASTUtils.getFunctionAncestor(sourceCode, node)
1314

1415
if (
1516
component !== undefined &&

packages/eslint-plugin-query/src/rules/stable-query-client/stable-query-client.rule.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,10 @@ export const rule = createRule({
4444
return
4545
}
4646

47-
const fnAncestor = ASTUtils.getFunctionAncestor(context)
47+
const fnAncestor = ASTUtils.getFunctionAncestor(
48+
context.sourceCode,
49+
node,
50+
)
4851
const isReactServerComponent = fnAncestor?.async === true
4952

5053
if (

packages/eslint-plugin-query/src/utils/ast-utils.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -219,9 +219,10 @@ export const ASTUtils = {
219219
)
220220
},
221221
getFunctionAncestor(
222-
context: Readonly<TSESLint.RuleContext<string, ReadonlyArray<unknown>>>,
222+
sourceCode: Readonly<TSESLint.SourceCode>,
223+
node: TSESTree.Node,
223224
) {
224-
for (const ancestor of context.getAncestors()) {
225+
for (const ancestor of sourceCode.getAncestors(node)) {
225226
if (ancestor.type === AST_NODE_TYPES.FunctionDeclaration) {
226227
return ancestor
227228
}

0 commit comments

Comments
 (0)