File tree Expand file tree Collapse file tree
packages/eslint-plugin-query/src Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ ---
2+ " @tanstack/eslint-plugin-query " : patch
3+ ---
4+
5+ Fix ` no-unstable-deps ` false positives for ` useSuspenseQueries ` results returned from ` combine ` .
Original file line number Diff line number Diff line change @@ -63,6 +63,24 @@ const baseTestCases = {
6363 }
6464 ` ,
6565 } ,
66+ {
67+ name : `should pass when useSuspenseQueries with combine is passed to ${ reactHookAlias } as dependency` ,
68+ code : `
69+ ${ reactHookImport }
70+ import { useSuspenseQueries } from "@tanstack/react-query";
71+
72+ function Component() {
73+ const queries = useSuspenseQueries({
74+ queries: [
75+ { queryKey: ['test'], queryFn: () => 'test' }
76+ ],
77+ combine: (results) => ({ data: results[0]?.data })
78+ });
79+ const callback = ${ reactHookInvocation } (() => { queries.data }, [queries]);
80+ return;
81+ }
82+ ` ,
83+ } ,
6684 ] )
6785 . concat ( [
6886 {
Original file line number Diff line number Diff line change @@ -112,12 +112,13 @@ export const rule = createRule({
112112 allHookNames . includes ( node . init . callee . name ) &&
113113 helpers . isTanstackQueryImport ( node . init . callee )
114114 ) {
115- // Special case for useQueries with combine property - it's stable
115+ // Special case for useQueries/useSuspenseQueries with combine property - it's stable
116116 if (
117- node . init . callee . name === 'useQueries' &&
117+ ( node . init . callee . name === 'useQueries' ||
118+ node . init . callee . name === 'useSuspenseQueries' ) &&
118119 hasCombineProperty ( node . init )
119120 ) {
120- // Don't track useQueries with combine as unstable
121+ // Don't track useQueries/useSuspenseQueries with combine as unstable
121122 return
122123 }
123124 collectVariableNames ( node . id , node . init . callee . name )
You can’t perform that action at this time.
0 commit comments