Skip to content

Commit f7f1611

Browse files
authored
chore: turn on no-unnecessary-type-assertion (#5057)
* chore: turn on no-unnecessary-type-assertion * chore: disable linter on false-positive * more false positives * the last one * hah, a couple more real ones
1 parent b2f143b commit f7f1611

File tree

13 files changed

+20
-16
lines changed

13 files changed

+20
-16
lines changed

.eslintrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
"@typescript-eslint/no-explicit-any": "off",
4141
"@typescript-eslint/no-non-null-assertion": "off",
4242
"@typescript-eslint/no-unnecessary-condition": "error",
43+
"@typescript-eslint/no-unnecessary-type-assertion": "error",
4344
"@typescript-eslint/no-inferrable-types": [
4445
"error",
4546
{

packages/query-async-storage-persister/src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ export const createAsyncStoragePersister = ({
8989
return
9090
}
9191

92-
return deserialize(cacheString) as PersistedClient
92+
return deserialize(cacheString)
9393
},
9494
removeClient: () => storage.removeItem(key),
9595
}

packages/query-core/src/mutation.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ export class Mutation<
209209
this as Mutation<unknown, unknown, unknown, unknown>,
210210
)
211211

212-
await this.options.onSuccess?.(data, variables, this.state.context!)
212+
await this.options.onSuccess?.(data, variables, this.state.context)
213213

214214
await this.options.onSettled?.(data, null, variables, this.state.context)
215215

packages/query-core/src/mutationObserver.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -103,9 +103,7 @@ export class MutationObserver<
103103

104104
this.#currentMutation = this.#client
105105
.getMutationCache()
106-
.build(this.#client, {
107-
...this.options,
108-
})
106+
.build(this.#client, this.options)
109107

110108
this.#currentMutation.addObserver(this)
111109

packages/query-core/src/query.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -458,7 +458,7 @@ export class Query<
458458
return
459459
}
460460

461-
this.setData(data as TData)
461+
this.setData(data)
462462

463463
// Notify cache callback
464464
this.#cache.config.onSuccess?.(data, this as Query<any, any, any, any>)

packages/query-core/src/queryObserver.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -648,10 +648,10 @@ export class QueryObserver<
648648
// First trigger the configuration callbacks
649649
if (notifyOptions.onSuccess) {
650650
this.options.onSuccess?.(this.#currentResult.data!)
651-
this.options.onSettled?.(this.#currentResult.data!, null)
651+
this.options.onSettled?.(this.#currentResult.data, null)
652652
} else if (notifyOptions.onError) {
653653
this.options.onError?.(this.#currentResult.error!)
654-
this.options.onSettled?.(undefined, this.#currentResult.error!)
654+
this.options.onSettled?.(undefined, this.#currentResult.error)
655655
}
656656

657657
// Then trigger the listeners

packages/query-core/src/subscribable.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ export class Subscribable<TListener extends Function = Listener> {
99
}
1010

1111
subscribe(listener: TListener): () => void {
12-
this.listeners.push(listener as TListener)
12+
this.listeners.push(listener)
1313

1414
this.onSubscribe()
1515

packages/query-sync-storage-persister/src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ export function createSyncStoragePersister({
7676
return
7777
}
7878

79-
return deserialize(cacheString) as PersistedClient
79+
return deserialize(cacheString)
8080
},
8181
removeClient: () => {
8282
storage.removeItem(key)

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

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -720,9 +720,9 @@ describe('ReactQueryDevtools', () => {
720720
initialIsOpen: true,
721721
})
722722

723-
const positionSelect = (await screen.findByLabelText(
723+
const positionSelect: HTMLSelectElement = await screen.findByLabelText(
724724
'Panel position',
725-
)) as HTMLSelectElement
725+
)
726726

727727
expect(positionSelect.value).toBe('bottom')
728728
})
@@ -748,9 +748,9 @@ describe('ReactQueryDevtools', () => {
748748
panelPosition: 'left',
749749
})
750750

751-
const positionSelect = (await screen.findByLabelText(
751+
const positionSelect: HTMLSelectElement = await screen.findByLabelText(
752752
'Panel position',
753-
)) as HTMLSelectElement
753+
)
754754

755755
expect(positionSelect.value).toBe('left')
756756

@@ -783,9 +783,9 @@ describe('ReactQueryDevtools', () => {
783783
initialIsOpen: true,
784784
})
785785

786-
const positionSelect = (await screen.findByLabelText(
786+
const positionSelect: HTMLSelectElement = await screen.findByLabelText(
787787
'Panel position',
788-
)) as HTMLSelectElement
788+
)
789789

790790
expect(positionSelect.value).toBe('bottom')
791791

packages/react-query/src/useInfiniteQuery.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export function useInfiniteQuery<
2929
): UseInfiniteQueryResult<TData, TError> {
3030
return useBaseQuery(
3131
options,
32+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
3233
InfiniteQueryObserver as typeof QueryObserver,
3334
queryClient,
3435
) as UseInfiniteQueryResult<TData, TError>

packages/solid-query/src/createInfiniteQuery.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ export function createInfiniteQuery<
3131
): CreateInfiniteQueryResult<TData, TError> {
3232
return createBaseQuery(
3333
createMemo(() => options()),
34+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
3435
InfiniteQueryObserver as typeof QueryObserver,
3536
queryClient,
3637
) as CreateInfiniteQueryResult<TData, TError>

packages/svelte-query/src/createInfiniteQuery.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ export function createInfiniteQuery<
3131
): CreateInfiniteQueryResult<TData, TError> {
3232
return createBaseQuery(
3333
options,
34+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
3435
InfiniteQueryObserver as typeof QueryObserver,
3536
queryClient,
3637
) as CreateInfiniteQueryResult<TData, TError>

packages/vue-query/src/useInfiniteQuery.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,9 @@ export function useInfiniteQuery<
8989
>,
9090
queryClient?: QueryClient,
9191
): UseInfiniteQueryReturnType<TData, TError> {
92+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
9293
const result = useBaseQuery(
94+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
9395
InfiniteQueryObserver as typeof QueryObserver,
9496
options,
9597
queryClient,

0 commit comments

Comments
 (0)