diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f07f37ec2965f..b78e65b2a8365 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1314,13 +1314,19 @@ importers: version: link:../webpack-config '@tanstack/react-query': specifier: 5.0.5 - version: 5.0.5(react@18.3.1) + version: 5.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@tanstack/react-query-devtools': + specifier: 5.0.5 + version: 5.0.5(@tanstack/react-query@5.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) jest: specifier: '*' version: 29.7.0 react: specifier: 18.3.1 version: 18.3.1 + react-dom: + specifier: ^18.0.0 + version: 18.3.1(react@18.3.1) tslib: specifier: 2.5.0 version: 2.5.0 @@ -7539,9 +7545,19 @@ packages: '@tanstack/query-core@5.20.5': resolution: {integrity: sha512-T1W28gGgWn0A++tH3lxj3ZuUVZZorsiKcv+R50RwmPYz62YoDEkG4/aXHZELGkRp4DfrW07dyq2K5dvJ4Wl1aA==} + '@tanstack/query-devtools@5.0.5': + resolution: {integrity: sha512-xjuOhOrrO50sPoJ4WG9yPe3imQ0Ds/nutnmwdTqjM2ZTIkflh//p7q2iB6IxFBY9sB106h+PULlma8sgTuOKAQ==} + '@tanstack/query-devtools@5.20.2': resolution: {integrity: sha512-BZfSjhk/NGPbqte5E3Vc1Zbj28uWt///4I0DgzAdWrOtMVvdl0WlUXK23K2daLsbcyfoDR4jRI4f2Z5z/mMzuw==} + '@tanstack/react-query-devtools@5.0.5': + resolution: {integrity: sha512-vJyS7HXx2zw43TQjm3m4uyaNUgGizOpK2SZL9Lc+DZSuhFbuZ55UEYJTz8yudCbHdLXlkuVZwo6TWWOhXWJFeA==} + peerDependencies: + '@tanstack/react-query': ^5.0.5 + react: ^18.0.0 + react-dom: ^18.0.0 + '@tanstack/react-query-devtools@5.20.5': resolution: {integrity: sha512-Wl7IzNuKCb4h41a5iH/YXNwalHItqJPCAr4r8+0iUYOLHNOf3E9P0G4kzZ9sqDoWKxY04qst6Vrij9bwPzLQRQ==} peerDependencies: @@ -18387,8 +18403,17 @@ snapshots: '@tanstack/query-core@5.20.5': {} + '@tanstack/query-devtools@5.0.5': {} + '@tanstack/query-devtools@5.20.2': {} + '@tanstack/react-query-devtools@5.0.5(@tanstack/react-query@5.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@tanstack/query-devtools': 5.0.5 + '@tanstack/react-query': 5.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + '@tanstack/react-query-devtools@5.20.5(@tanstack/react-query@5.20.5(react@18.3.1))(react@18.3.1)': dependencies: '@tanstack/query-devtools': 5.20.2 @@ -18403,10 +18428,12 @@ snapshots: optionalDependencies: react-dom: 18.3.1(react@18.3.1) - '@tanstack/react-query@5.0.5(react@18.3.1)': + '@tanstack/react-query@5.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@tanstack/query-core': 5.0.5 react: 18.3.1 + optionalDependencies: + react-dom: 18.3.1(react@18.3.1) '@tanstack/react-query@5.20.5(react@18.3.1)': dependencies: diff --git a/projects/js-packages/react-data-sync-client/changelog/add-react-data-sync-client-react-query-devtools b/projects/js-packages/react-data-sync-client/changelog/add-react-data-sync-client-react-query-devtools new file mode 100644 index 0000000000000..1d04ef2cda50f --- /dev/null +++ b/projects/js-packages/react-data-sync-client/changelog/add-react-data-sync-client-react-query-devtools @@ -0,0 +1,4 @@ +Significance: patch +Type: added + +Add React Query Devtools diff --git a/projects/js-packages/react-data-sync-client/package.json b/projects/js-packages/react-data-sync-client/package.json index 37034b9b0ccf1..b60ef12fdc429 100644 --- a/projects/js-packages/react-data-sync-client/package.json +++ b/projects/js-packages/react-data-sync-client/package.json @@ -24,6 +24,8 @@ "devDependencies": { "@automattic/jetpack-webpack-config": "workspace:*", "@tanstack/react-query": "5.0.5", + "@tanstack/react-query-devtools": "5.0.5", + "react-dom": "^18.0.0", "jest": "*", "react": "18.3.1", "tslib": "2.5.0", diff --git a/projects/js-packages/react-data-sync-client/src/DataSyncHooks.ts b/projects/js-packages/react-data-sync-client/src/DataSyncHooks.ts index 38cfce451f959..dc82d51bbda79 100644 --- a/projects/js-packages/react-data-sync-client/src/DataSyncHooks.ts +++ b/projects/js-packages/react-data-sync-client/src/DataSyncHooks.ts @@ -8,6 +8,7 @@ import { useMutation, QueryClientProvider, } from '@tanstack/react-query'; +import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; import React, { useRef, useEffect } from 'react'; import { z } from 'zod'; import { DataSync } from './DataSync'; @@ -29,10 +30,12 @@ export function invalidateQuery( key: string ) { * @see https://tanstack.com/query/v5/docs/react/reference/QueryClientProvider */ export function DataSyncProvider( props: { children: React.ReactNode } ) { - return QueryClientProvider( { - client: queryClient, - ...props, - } ); + return React.createElement( + QueryClientProvider, + { client: queryClient }, + props.children, + React.createElement( ReactQueryDevtools ) + ); } /**