Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(react-query): eslint-plugin-query now working with vanilla js #8322

Merged
merged 7 commits into from
Jan 4, 2025

Conversation

ShyneADL
Copy link
Contributor

To fix the issue with detecting imports in both TypeScript and JavaScript files, I modify the ImportDeclaration handler to handle cases where importKind might be undefined.

The key change is adding node.importKind === undefined to the condition. This ensures the import detection works for both TypeScript (where importKind is explicitly 'value') and JavaScript (where importKind is undefined).

This modification should resolve the lint plugin's compatibility issue with vanilla JavaScript apps by allowing import detection regardless of the importKind value.

closes #8257

Copy link

nx-cloud bot commented Nov 22, 2024

View your CI Pipeline Execution ↗ for commit 36ea4f4.

Command Status Duration Result
nx affected --targets=test:sherif,test:knip,tes... ✅ Succeeded 2m 50s View ↗
nx run-many --target=build --exclude=examples/*... ✅ Succeeded 1m 4s View ↗

☁️ Nx Cloud last updated this comment at 2025-01-04 11:32:23 UTC

Copy link

pkg-pr-new bot commented Nov 22, 2024

Open in Stackblitz

More templates

@tanstack/angular-query-devtools-experimental

npm i https://pkg.pr.new/@tanstack/angular-query-devtools-experimental@8322

@tanstack/angular-query-experimental

npm i https://pkg.pr.new/@tanstack/angular-query-experimental@8322

@tanstack/query-async-storage-persister

npm i https://pkg.pr.new/@tanstack/query-async-storage-persister@8322

@tanstack/eslint-plugin-query

npm i https://pkg.pr.new/@tanstack/eslint-plugin-query@8322

@tanstack/query-broadcast-client-experimental

npm i https://pkg.pr.new/@tanstack/query-broadcast-client-experimental@8322

@tanstack/query-core

npm i https://pkg.pr.new/@tanstack/query-core@8322

@tanstack/query-devtools

npm i https://pkg.pr.new/@tanstack/query-devtools@8322

@tanstack/query-persist-client-core

npm i https://pkg.pr.new/@tanstack/query-persist-client-core@8322

@tanstack/query-sync-storage-persister

npm i https://pkg.pr.new/@tanstack/query-sync-storage-persister@8322

@tanstack/react-query

npm i https://pkg.pr.new/@tanstack/react-query@8322

@tanstack/react-query-devtools

npm i https://pkg.pr.new/@tanstack/react-query-devtools@8322

@tanstack/react-query-next-experimental

npm i https://pkg.pr.new/@tanstack/react-query-next-experimental@8322

@tanstack/react-query-persist-client

npm i https://pkg.pr.new/@tanstack/react-query-persist-client@8322

@tanstack/solid-query

npm i https://pkg.pr.new/@tanstack/solid-query@8322

@tanstack/solid-query-devtools

npm i https://pkg.pr.new/@tanstack/solid-query-devtools@8322

@tanstack/solid-query-persist-client

npm i https://pkg.pr.new/@tanstack/solid-query-persist-client@8322

@tanstack/svelte-query

npm i https://pkg.pr.new/@tanstack/svelte-query@8322

@tanstack/svelte-query-devtools

npm i https://pkg.pr.new/@tanstack/svelte-query-devtools@8322

@tanstack/vue-query

npm i https://pkg.pr.new/@tanstack/vue-query@8322

@tanstack/svelte-query-persist-client

npm i https://pkg.pr.new/@tanstack/svelte-query-persist-client@8322

@tanstack/vue-query-devtools

npm i https://pkg.pr.new/@tanstack/vue-query-devtools@8322

commit: 36ea4f4

@TkDodo
Copy link
Collaborator

TkDodo commented Nov 22, 2024

there’s a lint error because typescript thinks the check is unnecessary:

/home/workflows/workspace/packages/eslint-plugin-query/src/utils/detect-react-query-imports.ts
  58:43  error  Unnecessary conditional, both sides of the expression are literal values  @typescript-eslint/no-unnecessary-condition

you must likely disable the linter for this line

Copy link

codecov bot commented Nov 24, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 88.22%. Comparing base (0503282) to head (36ea4f4).
Report is 4 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##             main    #8322       +/-   ##
===========================================
+ Coverage   46.26%   88.22%   +41.95%     
===========================================
  Files         199       15      -184     
  Lines        7532      501     -7031     
  Branches     1720      186     -1534     
===========================================
- Hits         3485      442     -3043     
+ Misses       3668       45     -3623     
+ Partials      379       14      -365     
Components Coverage Δ
@tanstack/angular-query-devtools-experimental ∅ <ø> (∅)
@tanstack/angular-query-experimental ∅ <ø> (∅)
@tanstack/eslint-plugin-query 88.22% <100.00%> (ø)
@tanstack/query-async-storage-persister ∅ <ø> (∅)
@tanstack/query-broadcast-client-experimental ∅ <ø> (∅)
@tanstack/query-codemods ∅ <ø> (∅)
@tanstack/query-core ∅ <ø> (∅)
@tanstack/query-devtools ∅ <ø> (∅)
@tanstack/query-persist-client-core ∅ <ø> (∅)
@tanstack/query-sync-storage-persister ∅ <ø> (∅)
@tanstack/react-query ∅ <ø> (∅)
@tanstack/react-query-devtools ∅ <ø> (∅)
@tanstack/react-query-next-experimental ∅ <ø> (∅)
@tanstack/react-query-persist-client ∅ <ø> (∅)
@tanstack/solid-query ∅ <ø> (∅)
@tanstack/solid-query-devtools ∅ <ø> (∅)
@tanstack/solid-query-persist-client ∅ <ø> (∅)
@tanstack/svelte-query ∅ <ø> (∅)
@tanstack/svelte-query-devtools ∅ <ø> (∅)
@tanstack/svelte-query-persist-client ∅ <ø> (∅)
@tanstack/vue-query ∅ <ø> (∅)
@tanstack/vue-query-devtools ∅ <ø> (∅)

@ShyneADL
Copy link
Contributor Author

Hey, just here to bring attention back to this PR

I want to ask if there's any reason why it hasn't been merged yet?
Thanks

@TkDodo TkDodo merged commit f6757a6 into TanStack:main Jan 4, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

eslint-plugin-query not working with vanilla JS
3 participants