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): Allow optional initialData in infiniteQueryOptions #8154

Merged
merged 3 commits into from
Oct 9, 2024

Conversation

sungpaks
Copy link
Contributor

@sungpaks sungpaks commented Oct 9, 2024

Issue fix : #8132
There was a typescript error(but could be run with no problem) when using optional initialData in infiniteQueryOptions

Copy link

nx-cloud bot commented Oct 9, 2024

☁️ Nx Cloud Report

CI is running/has finished running commands for commit 45db433. As they complete they will appear below. Click to see the status, the terminal output, and the build insights.

📂 See all runs for this CI Pipeline Execution


✅ Successfully ran 2 targets

Sent with 💌 from NxCloud.

Copy link

pkg-pr-new bot commented Oct 9, 2024

Open in Stackblitz

More templates

@tanstack/angular-query-devtools-experimental

pnpm add https://pkg.pr.new/@tanstack/angular-query-devtools-experimental@8154

@tanstack/eslint-plugin-query

pnpm add https://pkg.pr.new/@tanstack/eslint-plugin-query@8154

@tanstack/angular-query-experimental

pnpm add https://pkg.pr.new/@tanstack/angular-query-experimental@8154

@tanstack/query-async-storage-persister

pnpm add https://pkg.pr.new/@tanstack/query-async-storage-persister@8154

@tanstack/query-broadcast-client-experimental

pnpm add https://pkg.pr.new/@tanstack/query-broadcast-client-experimental@8154

@tanstack/query-core

pnpm add https://pkg.pr.new/@tanstack/query-core@8154

@tanstack/query-devtools

pnpm add https://pkg.pr.new/@tanstack/query-devtools@8154

@tanstack/query-persist-client-core

pnpm add https://pkg.pr.new/@tanstack/query-persist-client-core@8154

@tanstack/query-sync-storage-persister

pnpm add https://pkg.pr.new/@tanstack/query-sync-storage-persister@8154

@tanstack/react-query-devtools

pnpm add https://pkg.pr.new/@tanstack/react-query-devtools@8154

@tanstack/react-query

pnpm add https://pkg.pr.new/@tanstack/react-query@8154

@tanstack/react-query-next-experimental

pnpm add https://pkg.pr.new/@tanstack/react-query-next-experimental@8154

@tanstack/react-query-persist-client

pnpm add https://pkg.pr.new/@tanstack/react-query-persist-client@8154

@tanstack/solid-query

pnpm add https://pkg.pr.new/@tanstack/solid-query@8154

@tanstack/solid-query-devtools

pnpm add https://pkg.pr.new/@tanstack/solid-query-devtools@8154

@tanstack/solid-query-persist-client

pnpm add https://pkg.pr.new/@tanstack/solid-query-persist-client@8154

@tanstack/svelte-query-devtools

pnpm add https://pkg.pr.new/@tanstack/svelte-query-devtools@8154

@tanstack/svelte-query

pnpm add https://pkg.pr.new/@tanstack/svelte-query@8154

@tanstack/svelte-query-persist-client

pnpm add https://pkg.pr.new/@tanstack/svelte-query-persist-client@8154

@tanstack/vue-query

pnpm add https://pkg.pr.new/@tanstack/vue-query@8154

@tanstack/vue-query-devtools

pnpm add https://pkg.pr.new/@tanstack/vue-query-devtools@8154

commit: 45db433

Copy link
Collaborator

@TkDodo TkDodo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you please add a type test to packages/react-query/src/__tests__/infiniteQueryOptions.test-d.tsx that fails before and succeeds with your fix ?

packages/react-query/src/infiniteQueryOptions.ts Outdated Show resolved Hide resolved
Copy link

codecov bot commented Oct 9, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 81.89%. Comparing base (2fe16e5) to head (45db433).
Report is 12 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##             main    #8154       +/-   ##
===========================================
+ Coverage   45.41%   81.89%   +36.48%     
===========================================
  Files         200       26      -174     
  Lines        7456      359     -7097     
  Branches     1696       99     -1597     
===========================================
- Hits         3386      294     -3092     
+ Misses       3694       56     -3638     
+ Partials      376        9      -367     
Components Coverage Δ
@tanstack/angular-query-devtools-experimental ∅ <ø> (∅)
@tanstack/angular-query-experimental ∅ <ø> (∅)
@tanstack/eslint-plugin-query ∅ <ø> (∅)
@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 93.12% <100.00%> (ø)
@tanstack/react-query-devtools 10.00% <ø> (ø)
@tanstack/react-query-next-experimental ∅ <ø> (∅)
@tanstack/react-query-persist-client 100.00% <ø> (ø)
@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 ∅ <ø> (∅)

@sungpaks
Copy link
Contributor Author

sungpaks commented Oct 9, 2024

can you please add a type test to packages/react-query/src/__tests__/infiniteQueryOptions.test-d.tsx that fails before and succeeds with your fix ?

I added a type test that failed before and succeeds with my fix.

@TkDodo TkDodo merged commit 8d03029 into TanStack:main Oct 9, 2024
8 checks passed
initialData?:
| undefined
| InitialDataFunction<
NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>
Copy link
Contributor

@jimmycallin jimmycallin Oct 9, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should this have been something like

  initialData?:
    | undefined
    | NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>
    | InitialDataFunction<
        NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>

to allow passing initialData as object and not within a callback function?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we can pass initialData as an object via DefinedInitialDataInfiniteOptions:

> & {
initialData:
| NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>
| (() => NonUndefinedGuard<InfiniteData<TQueryFnData, TPageParam>>)
}

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

okay then what’s the fix please 😅

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I made a PR here :) #8157

Hope that clarifies things, or perhaps I'm misunderstanding something!

@jimmycallin
Copy link
Contributor

thanks for addressing my issue so quickly! i added a post-merge comment with a potential overlook. :)

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.

Cannot pass an optional infiniteData parameter to infiniteQueryOptions function
3 participants