@tanstack/react-query 4.13.0 → 4.13.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/react-query",
3
- "version": "4.13.0",
3
+ "version": "4.13.4",
4
4
  "description": "Hooks for managing, caching and syncing asynchronous and remote data in React",
5
5
  "author": "tannerlinsley",
6
6
  "license": "MIT",
@@ -46,7 +46,7 @@
46
46
  "react-error-boundary": "^3.1.4"
47
47
  },
48
48
  "dependencies": {
49
- "@tanstack/query-core": "4.13.0",
49
+ "@tanstack/query-core": "4.13.4",
50
50
  "use-sync-external-store": "^1.2.0"
51
51
  },
52
52
  "peerDependencies": {
@@ -401,30 +401,33 @@ describe('useQuery', () => {
401
401
 
402
402
  it('should set isFetchedAfterMount to true after a query has been fetched', async () => {
403
403
  const key = queryKey()
404
- const states: UseQueryResult<string>[] = []
405
404
 
406
405
  await queryClient.prefetchQuery(key, () => 'prefetched')
407
406
 
408
407
  function Page() {
409
- const state = useQuery(key, () => 'data')
410
- states.push(state)
411
- return null
408
+ const result = useQuery(key, () => 'new data')
409
+
410
+ return (
411
+ <>
412
+ <div>data: {result.data}</div>
413
+ <div>isFetched: {result.isFetched ? 'true' : 'false'}</div>
414
+ <div>
415
+ isFetchedAfterMount: {result.isFetchedAfterMount ? 'true' : 'false'}
416
+ </div>
417
+ </>
418
+ )
412
419
  }
413
420
 
414
- renderWithClient(queryClient, <Page />)
421
+ const rendered = renderWithClient(queryClient, <Page />)
415
422
 
416
- await sleep(10)
417
- expect(states.length).toBe(2)
423
+ rendered.getByText('data: prefetched')
424
+ rendered.getByText('isFetched: true')
425
+ rendered.getByText('isFetchedAfterMount: false')
418
426
 
419
- expect(states[0]).toMatchObject({
420
- data: 'prefetched',
421
- isFetched: true,
422
- isFetchedAfterMount: false,
423
- })
424
- expect(states[1]).toMatchObject({
425
- data: 'data',
426
- isFetched: true,
427
- isFetchedAfterMount: true,
427
+ await waitFor(() => {
428
+ rendered.getByText('data: new data')
429
+ rendered.getByText('isFetched: true')
430
+ rendered.getByText('isFetchedAfterMount: true')
428
431
  })
429
432
  })
430
433
 
@@ -601,7 +604,8 @@ describe('useQuery', () => {
601
604
 
602
605
  const rendered = renderWithClient(queryClient, <Page />)
603
606
 
604
- await sleep(5)
607
+ rendered.getByText('status: loading, fetchStatus: fetching')
608
+
605
609
  await queryClient.cancelQueries(key)
606
610
  // query cancellation will reset the query to it's initial state
607
611
  await waitFor(() =>
@@ -2286,15 +2290,22 @@ describe('useQuery', () => {
2286
2290
  }
2287
2291
 
2288
2292
  function Page() {
2289
- useQuery(key, queryFn)
2290
- useQuery(key, queryFn)
2293
+ const query1 = useQuery(key, queryFn)
2294
+ const query2 = useQuery(key, queryFn)
2291
2295
  renders++
2292
- return null
2296
+
2297
+ return (
2298
+ <div>
2299
+ {query1.data} {query2.data}
2300
+ </div>
2301
+ )
2293
2302
  }
2294
2303
 
2295
- renderWithClient(queryClient, <Page />)
2304
+ const rendered = renderWithClient(queryClient, <Page />)
2296
2305
 
2297
- await sleep(20)
2306
+ await waitFor(() => {
2307
+ rendered.getByText('data data')
2308
+ })
2298
2309
 
2299
2310
  // Should be 2 instead of 3
2300
2311
  expect(renders).toBe(2)