Skip to content

Commit febbde6

Browse files
chore: Update ESLint config (#7637)
* chore: Update ESLint config * Fix errors * Fix knip
1 parent e6a0fdd commit febbde6

File tree

48 files changed

+77
-159
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+77
-159
lines changed

eslint.config.js

+13-9
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
11
// @ts-check
22

3-
// @ts-ignore
4-
import { rootConfig } from '@tanstack/config/eslint'
5-
// @ts-ignore
6-
import cspellConfigs from '@cspell/eslint-plugin/configs'
3+
// @ts-ignore Needed due to moduleResolution Node vs Bundler
4+
import { tanstackConfig } from '@tanstack/config/eslint'
5+
import pluginCspell from '@cspell/eslint-plugin'
76

87
export default [
9-
...rootConfig,
10-
cspellConfigs.recommended,
8+
...tanstackConfig,
119
{
1210
name: 'tanstack/temp',
11+
plugins: {
12+
cspell: pluginCspell,
13+
},
1314
rules: {
14-
'@cspell/spellchecker': [
15-
'error',
15+
'cspell/spellchecker': [
16+
'warn',
1617
{
1718
cspell: {
1819
words: [
@@ -34,8 +35,11 @@ export default [
3435
},
3536
},
3637
],
37-
'@typescript-eslint/no-empty-function': 'off',
38+
'ts/ban-types': 'off',
39+
'ts/no-empty-function': 'off',
40+
'ts/require-await': 'off',
3841
'no-case-declarations': 'off',
42+
'no-empty': 'off',
3943
'no-prototype-builtins': 'off',
4044
},
4145
},

package.json

+1-2
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
"@cspell/eslint-plugin": "^8.9.1",
4747
"@eslint-react/eslint-plugin": "^1.5.16",
4848
"@solidjs/testing-library": "^0.8.8",
49-
"@tanstack/config": "^0.8.1",
49+
"@tanstack/config": "^0.8.6",
5050
"@testing-library/jest-dom": "^6.4.5",
5151
"@testing-library/react": "^15.0.7",
5252
"@types/node": "^20.12.12",
@@ -72,7 +72,6 @@
7272
"solid-js": "^1.8.17",
7373
"tsup": "^8.0.2",
7474
"typescript": "5.3.3",
75-
"typescript-eslint": "^7.14.1",
7675
"typescript47": "npm:[email protected]",
7776
"typescript48": "npm:[email protected]",
7877
"typescript49": "npm:[email protected]",

packages/angular-query-devtools-experimental/src/angular-query-devtools.component.ts

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
import { isPlatformBrowser } from '@angular/common'
22
import * as queryDevtools from '@tanstack/query-devtools'
3-
import {
4-
injectQueryClient,
5-
onlineManager,
6-
} from '@tanstack/angular-query-experimental'
73
import {
84
ChangeDetectionStrategy,
95
Component,
@@ -14,7 +10,11 @@ import {
1410
booleanAttribute,
1511
inject,
1612
} from '@angular/core'
17-
import { QueryClient } from '@tanstack/angular-query-experimental'
13+
import {
14+
QueryClient,
15+
injectQueryClient,
16+
onlineManager,
17+
} from '@tanstack/angular-query-experimental'
1818
import type {
1919
AfterViewInit,
2020
OnChanges,

packages/angular-query-experimental/src/infinite-query-options.ts

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
import type { DataTag } from '@tanstack/query-core'
2-
import type { InfiniteData } from '@tanstack/query-core'
1+
import type {
2+
DataTag,
3+
DefaultError,
4+
InfiniteData,
5+
QueryKey,
6+
} from '@tanstack/query-core'
37
import type { CreateInfiniteQueryOptions, NonUndefinedGuard } from './types'
4-
import type { DefaultError, QueryKey } from '@tanstack/query-core'
58

69
/**
710
* @public

packages/angular-query-experimental/src/util/assert-injector/assert-injector.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* eslint-disable @cspell/spellchecker */
1+
/* eslint-disable cspell/spellchecker */
22
/**
33
* The code in this file is adapted from NG Extension Platform at https://ngxtension.netlify.app.
44
*

packages/angular-query-experimental/src/util/assert-injector/assert-injector.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* eslint-disable @cspell/spellchecker */
1+
/* eslint-disable cspell/spellchecker */
22
/**
33
* The code in this file is adapted from NG Extension Platform at https://ngxtension.netlify.app.
44
*

packages/angular-query-experimental/src/util/create-injection-token/create-injection-token.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* eslint-disable @cspell/spellchecker */
1+
/* eslint-disable cspell/spellchecker */
22
/**
33
* The code in this file is adapted from NG Extension Platform at https://ngxtension.netlify.app.
44
*

packages/angular-query-experimental/src/util/create-injection-token/create-injection-token.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* eslint-disable @cspell/spellchecker */
1+
/* eslint-disable cspell/spellchecker */
22
/**
33
* The code in this file is adapted from NG Extension Platform at https://ngxtension.netlify.app.
44
*
@@ -169,7 +169,7 @@ export function createNoopInjectionToken<
169169
type TReturn = TMulti extends true ? Array<TValue> : TValue
170170

171171
const token =
172-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
172+
// eslint-disable-next-line ts/no-unnecessary-condition
173173
(options as CreateInjectionTokenOptions<() => void, []>)?.token ||
174174
new InjectionToken<TReturn>(description)
175175
return [

packages/query-codemods/eslint.config.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ export default [
66
...rootConfig,
77
{
88
rules: {
9-
'@cspell/spellchecker': 'off',
10-
'@typescript-eslint/no-unused-vars': 'off',
11-
'@typescript-eslint/no-unnecessary-condition': 'off',
9+
'cspell/spellchecker': 'off',
10+
'ts/no-unnecessary-condition': 'off',
11+
'import/no-duplicates': 'off',
1212
'import/no-unresolved': 'off',
1313
'import/order': 'off',
1414
'no-shadow': 'off',

packages/query-codemods/src/v4/__tests__/key-transformation.test.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const defineTest = require('jscodeshift/dist/testUtils').defineTest
32

43
defineTest(__dirname, 'key-transformation.cjs', null, 'default-import', {

packages/query-codemods/src/v4/__tests__/replace-import-specifier.test.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const defineTest = require('jscodeshift/dist/testUtils').defineTest
32

43
defineTest(

packages/query-codemods/src/v4/key-transformation.cjs

-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const createUtilsObject = require('../utils/index.cjs')
3-
// eslint-disable-next-line @typescript-eslint/no-var-requires
42
const createKeyReplacer = require('./utils/replacers/key-replacer.cjs')
5-
// eslint-disable-next-line @typescript-eslint/no-var-requires
63
const createUseQueryLikeTransformer = require('../utils/transformers/use-query-like-transformer.cjs')
7-
// eslint-disable-next-line @typescript-eslint/no-var-requires
84
const createQueryClientTransformer = require('../utils/transformers/query-client-transformer.cjs')
9-
// eslint-disable-next-line @typescript-eslint/no-var-requires
105
const createQueryCacheTransformer = require('../utils/transformers/query-cache-transformer.cjs')
116

127
const transformQueryClientUsages = ({

packages/query-codemods/src/v5/is-loading/__tests__/is-loading.test.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const defineTest = require('jscodeshift/dist/testUtils').defineTest
32

43
defineTest(__dirname, 'is-loading.cjs', null, 'default-import', {

packages/query-codemods/src/v5/is-loading/is-loading.cjs

-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const createUtilsObject = require('../../utils/index.cjs')
3-
// eslint-disable-next-line @typescript-eslint/no-var-requires
42
const createUseQueryLikeTransformer = require('../../utils/transformers/use-query-like-transformer.cjs')
5-
// eslint-disable-next-line @typescript-eslint/no-var-requires
63
const createQueryClientTransformer = require('../../utils/transformers/query-client-transformer.cjs')
74

85
const originalName = 'isLoading'

packages/query-codemods/src/v5/keep-previous-data/__tests__/keep-previous-data.test.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const defineTest = require('jscodeshift/dist/testUtils').defineTest
32

43
defineTest(__dirname, 'keep-previous-data.cjs', null, 'default', {

packages/query-codemods/src/v5/keep-previous-data/keep-previous-data.cjs

-4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const createUtilsObject = require('../../utils/index.cjs')
3-
// eslint-disable-next-line @typescript-eslint/no-var-requires
42
const createUseQueryLikeTransformer = require('../../utils/transformers/use-query-like-transformer.cjs')
5-
// eslint-disable-next-line @typescript-eslint/no-var-requires
63
const createQueryClientTransformer = require('../../utils/transformers/query-client-transformer.cjs')
7-
// eslint-disable-next-line @typescript-eslint/no-var-requires
84
const AlreadyHasPlaceholderDataProperty = require('./utils/already-has-placeholder-data-property.cjs')
95

106
/**

packages/query-codemods/src/v5/remove-overloads/__tests__/remove-overloads.test.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const defineTest = require('jscodeshift/dist/testUtils').defineTest
32

43
defineTest(__dirname, 'remove-overloads.cjs', null, 'default-import', {

packages/query-codemods/src/v5/remove-overloads/remove-overloads.cjs

-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const createUtilsObject = require('../../utils/index.cjs')
3-
// eslint-disable-next-line @typescript-eslint/no-var-requires
42
const transformFilterAwareUsages = require('./transformers/filter-aware-usage-transformer.cjs')
5-
// eslint-disable-next-line @typescript-eslint/no-var-requires
63
const transformQueryFnAwareUsages = require('./transformers/query-fn-aware-usage-transformer.cjs')
74

85
module.exports = (file, api) => {

packages/query-codemods/src/v5/remove-overloads/transformers/filter-aware-usage-transformer.cjs

-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const createV5UtilsObject = require('../utils/index.cjs')
3-
// eslint-disable-next-line @typescript-eslint/no-var-requires
42
const UnknownUsageError = require('../utils/unknown-usage-error.cjs')
5-
// eslint-disable-next-line @typescript-eslint/no-var-requires
63
const createQueryClientTransformer = require('../../../utils/transformers/query-client-transformer.cjs')
7-
// eslint-disable-next-line @typescript-eslint/no-var-requires
84
const createQueryCacheTransformer = require('../../../utils/transformers/query-cache-transformer.cjs')
9-
// eslint-disable-next-line @typescript-eslint/no-var-requires
105
const createUseQueryLikeTransformer = require('../../../utils/transformers/use-query-like-transformer.cjs')
116

127
/**

packages/query-codemods/src/v5/remove-overloads/transformers/query-fn-aware-usage-transformer.cjs

-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const createV5UtilsObject = require('../utils/index.cjs')
3-
// eslint-disable-next-line @typescript-eslint/no-var-requires
42
const UnknownUsageError = require('../utils/unknown-usage-error.cjs')
5-
// eslint-disable-next-line @typescript-eslint/no-var-requires
63
const createQueryClientTransformer = require('../../../utils/transformers/query-client-transformer.cjs')
74

85
/**

packages/query-codemods/src/v5/remove-overloads/utils/index.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const UnknownUsageError = require('./unknown-usage-error.cjs')
32

43
module.exports = ({ jscodeshift, utils }) => {

packages/query-codemods/src/v5/rename-hydrate/__tests__/rename-hydrate.test.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const defineTest = require('jscodeshift/dist/testUtils').defineTest
32

43
defineTest(__dirname, 'rename-hydrate.cjs', null, 'default-import', {

packages/query-codemods/src/v5/rename-properties/__tests__/rename-properties.test.cjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// eslint-disable-next-line @typescript-eslint/no-var-requires
21
const defineTest = require('jscodeshift/dist/testUtils').defineTest
32

43
defineTest(__dirname, 'rename-properties.cjs', null, 'rename-cache-time', {

packages/query-core/src/focusManager.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export class FocusManager extends Subscribable<Listener> {
1717
super()
1818
this.#setup = (onFocus) => {
1919
// addEventListener does not exist in React Native, but window does
20-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
20+
// eslint-disable-next-line ts/no-unnecessary-condition
2121
if (!isServer && window.addEventListener) {
2222
const listener = () => onFocus()
2323
// Listen to visibilitychange
@@ -78,7 +78,7 @@ export class FocusManager extends Subscribable<Listener> {
7878
}
7979

8080
// document global can be unavailable in react native
81-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
81+
// eslint-disable-next-line ts/no-unnecessary-condition
8282
return globalThis.document?.visibilityState !== 'hidden'
8383
}
8484
}

packages/query-core/src/hydration.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -130,9 +130,9 @@ export function hydrate(
130130
const mutationCache = client.getMutationCache()
131131
const queryCache = client.getQueryCache()
132132

133-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
133+
// eslint-disable-next-line ts/no-unnecessary-condition
134134
const mutations = (dehydratedState as DehydratedState).mutations || []
135-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
135+
// eslint-disable-next-line ts/no-unnecessary-condition
136136
const queries = (dehydratedState as DehydratedState).queries || []
137137

138138
mutations.forEach(({ state, ...mutationOptions }) => {

packages/query-core/src/onlineManager.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ export class OnlineManager extends Subscribable<Listener> {
1414
super()
1515
this.#setup = (onOnline) => {
1616
// addEventListener does not exist in React Native, but window does
17-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
17+
// eslint-disable-next-line ts/no-unnecessary-condition
1818
if (!isServer && window.addEventListener) {
1919
const onlineListener = () => onOnline(true)
2020
const offlineListener = () => onOnline(false)

packages/query-core/src/queryClient.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@ import { focusManager } from './focusManager'
1313
import { onlineManager } from './onlineManager'
1414
import { notifyManager } from './notifyManager'
1515
import { infiniteQueryBehavior } from './infiniteQueryBehavior'
16-
import type { DataTag, NoInfer, OmitKeyof } from './types'
1716
import type { QueryState } from './query'
1817
import type {
1918
CancelOptions,
19+
DataTag,
2020
DefaultError,
2121
DefaultOptions,
2222
DefaultedQueryObserverOptions,
@@ -29,6 +29,8 @@ import type {
2929
MutationKey,
3030
MutationObserverOptions,
3131
MutationOptions,
32+
NoInfer,
33+
OmitKeyof,
3234
QueryClientConfig,
3335
QueryKey,
3436
QueryObserverOptions,

packages/query-devtools/src/__tests__/utils.test.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ describe('Utils tests', () => {
9191
['fr', 'bonjour'],
9292
])
9393

94-
/* eslint-disable @cspell/spellchecker */
94+
/* eslint-disable cspell/spellchecker */
9595
const newData = updateNestedDataByPath(oldData, ['fr'], 'salut')
9696

9797
expect(newData).not.toBe(oldData) // should not be the same reference
@@ -114,7 +114,7 @@ describe('Utils tests', () => {
114114

115115
describe('nested data', () => {
116116
it('should update data correctly', async () => {
117-
/* eslint-disable @cspell/spellchecker */
117+
/* eslint-disable cspell/spellchecker */
118118
const oldData = new Map([
119119
[
120120
'pumpkin-pie',
@@ -473,7 +473,7 @@ describe('Utils tests', () => {
473473

474474
describe('nested data', () => {
475475
it('should delete nested items correctly', async () => {
476-
/* eslint-disable @cspell/spellchecker */
476+
/* eslint-disable cspell/spellchecker */
477477
const oldData = new Map([
478478
[
479479
'pumpkin-pie',

packages/query-persist-client-core/src/createPersister.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { matchQuery } from '@tanstack/query-core'
2-
import type { QueryFilters } from '@tanstack/query-core'
32
import type {
43
Query,
4+
QueryFilters,
55
QueryFunctionContext,
66
QueryKey,
77
QueryState,

packages/react-query/eslint.config.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export default [
2828
{
2929
files: ['**/__tests__/**'],
3030
rules: {
31-
'@typescript-eslint/no-unnecessary-condition': 'off',
31+
'ts/no-unnecessary-condition': 'off',
3232
'react-compiler/react-compiler': 'off',
3333
},
3434
},

packages/react-query/src/HydrationBoundary.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export const HydrationBoundary = ({
5858
}
5959

6060
const queryCache = client.getQueryCache()
61-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
61+
// eslint-disable-next-line ts/no-unnecessary-condition
6262
const queries = (state as DehydratedState).queries || []
6363

6464
const newQueries: DehydratedState['queries'] = []

packages/react-query/src/__tests__/HydrationBoundary.test.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
import { beforeAll, describe, expect, test } from 'vitest'
1+
import { beforeAll, describe, expect, test, vi } from 'vitest'
22
import * as React from 'react'
33
import { render } from '@testing-library/react'
44

55
import * as coreModule from '@tanstack/query-core'
6-
import { vi } from 'vitest'
76
import {
87
HydrationBoundary,
98
QueryCache,

packages/react-query/src/__tests__/QueryClientProvider.test.tsx

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
import { describe, expect, test } from 'vitest'
1+
import { describe, expect, test, vi } from 'vitest'
22
import { render, waitFor } from '@testing-library/react'
3-
4-
import { vi } from 'vitest'
53
import { QueryCache, QueryClientProvider, useQuery, useQueryClient } from '..'
64
import { createQueryClient, queryKey, sleep } from './utils'
75

packages/react-query/src/__tests__/QueryResetErrorBoundary.test.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
import { describe, expect, it } from 'vitest'
1+
import { describe, expect, it, vi } from 'vitest'
22
import { fireEvent, waitFor } from '@testing-library/react'
33
import { ErrorBoundary } from 'react-error-boundary'
44
import * as React from 'react'
55

6-
import { vi } from 'vitest'
76
import {
87
QueryCache,
98
QueryErrorResetBoundary,

0 commit comments

Comments
 (0)