feat: add typesafe query disabling via skipToken (#6999)
* feat: add typesafe react-query disabling via skipToken * feat: add unique identifier to skip token * feat(query-core): implement skipToken * chore(query-core): refactor logic of skipToken * feat(react-query): do not allow skipToken in useSuspenseQuery * feat(react-query): handle skip token in suspense react queries, add tests * refactor(query-core): remove check for queryFn === skipToken, enabled is set to false instead * refactor(query-core): remove check for queryFn === skipToken, enabled is set to false instead * chore(react-query): remove unused imports * fix(react-query): update test to display error message in error boundary * fix(query-core): reduce bundle size by using Symbol() instead of Symbol.for * fix(query-core): move check for skipToken into already existing if statement * refactor(query-core): remove no longer needed check for skipToken * refactor(query-core): make sure enabled===true takes precendence over skipToken * refactor(react-query): remove unnecesary check for skipToken * feat: bring back logging in dev mode * docs: use `skipToken` in TypeScript examples * refactor: remove checks that shouldn't be necessary because we now assign `enabled` in `defaultQueryOptions` * types: adjust useQueries types in non-react adapters * fix: infiniteQueryBehavior needs to _create_ a function that rejects if we have a skipToken, not reject right away * refactor: flip condition * try to fix query options * fix: make core compilable * fix: allow skipToken on type level for useSuspenseQuery and warn at runtime it won't work anyways * test: dataTag + skipToken * chore: remove a test that doesn't make much sense * chore: solid tests * chore: stabilize test * rewrite test * test(react-query): remove not needed doNotExecute from test, test-d.tsx files are not executed anyway * docs(react-query): add example of skipToken into react-query disabling-queries docs * docs: update disabling queries examples in Angular, React, and Vue guides * docs: add description of skipToken to typescript.md * test(react-query): add unique queryKey to should respect skipToken test * test(react-query): use helper function instead of string in should respect skipToken test --------- Co-authored-by: Dominik Dorfmeister <office@dorfmeister.cc>
J
Jaaneek committed
77d5b2eaecd94c889dd1e7318d3eebc366e4904c
Parent: 5e7b273
Committed by GitHub <noreply@github.com>
on 3/5/2024, 2:55:01 PM