From 0d8608922fb84a005464171b5b3f91bd9a071067 Mon Sep 17 00:00:00 2001 From: girishsontakke Date: Mon, 2 Jan 2023 22:27:45 +0530 Subject: [PATCH 1/4] perf(client components): added `use client` directive at the top of files having client components --- packages/react-query/src/QueryClientProvider.tsx | 1 + packages/react-query/src/QueryErrorResetBoundary.tsx | 1 + packages/react-query/src/useBaseQuery.ts | 1 + packages/react-query/src/useMutation.ts | 1 + packages/react-query/src/useQueries.ts | 1 + 5 files changed, 5 insertions(+) diff --git a/packages/react-query/src/QueryClientProvider.tsx b/packages/react-query/src/QueryClientProvider.tsx index 33a14f69cc..da4ba57880 100644 --- a/packages/react-query/src/QueryClientProvider.tsx +++ b/packages/react-query/src/QueryClientProvider.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import type { QueryClient } from '@tanstack/query-core' diff --git a/packages/react-query/src/QueryErrorResetBoundary.tsx b/packages/react-query/src/QueryErrorResetBoundary.tsx index 4a1fd73758..ba5fe3b2be 100644 --- a/packages/react-query/src/QueryErrorResetBoundary.tsx +++ b/packages/react-query/src/QueryErrorResetBoundary.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' // CONTEXT diff --git a/packages/react-query/src/useBaseQuery.ts b/packages/react-query/src/useBaseQuery.ts index df537ab745..39718a3c0e 100644 --- a/packages/react-query/src/useBaseQuery.ts +++ b/packages/react-query/src/useBaseQuery.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' diff --git a/packages/react-query/src/useMutation.ts b/packages/react-query/src/useMutation.ts index 8ba94a3bfb..0f10dbf74a 100644 --- a/packages/react-query/src/useMutation.ts +++ b/packages/react-query/src/useMutation.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' diff --git a/packages/react-query/src/useQueries.ts b/packages/react-query/src/useQueries.ts index 0682d30f1e..092d691dd1 100644 --- a/packages/react-query/src/useQueries.ts +++ b/packages/react-query/src/useQueries.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' From 7eb2223d843a4bb2530870c59d70a486ac9ac2e8 Mon Sep 17 00:00:00 2001 From: girishsontakke Date: Wed, 4 Jan 2023 14:22:15 +0530 Subject: [PATCH 2/4] perf(client components): added missing directives --- packages/react-query-devtools/src/Explorer.tsx | 1 + packages/react-query-devtools/src/devtools.tsx | 1 + packages/react-query-devtools/src/theme.tsx | 1 + packages/react-query-devtools/src/useLocalStorage.ts | 1 + packages/react-query-devtools/src/useMediaQuery.ts | 1 + packages/react-query-devtools/src/utils.ts | 1 + .../src/PersistQueryClientProvider.tsx | 1 + packages/react-query/src/useIsFetching.ts | 1 + packages/react-query/src/useIsMutating.ts | 1 + 9 files changed, 9 insertions(+) diff --git a/packages/react-query-devtools/src/Explorer.tsx b/packages/react-query-devtools/src/Explorer.tsx index 04871143fd..5c40e54000 100644 --- a/packages/react-query-devtools/src/Explorer.tsx +++ b/packages/react-query-devtools/src/Explorer.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import { displayValue, styled } from './utils' diff --git a/packages/react-query-devtools/src/devtools.tsx b/packages/react-query-devtools/src/devtools.tsx index 9de970493c..1e23d69d0e 100644 --- a/packages/react-query-devtools/src/devtools.tsx +++ b/packages/react-query-devtools/src/devtools.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' import type { diff --git a/packages/react-query-devtools/src/theme.tsx b/packages/react-query-devtools/src/theme.tsx index b8d1de0c2f..2530e5463f 100644 --- a/packages/react-query-devtools/src/theme.tsx +++ b/packages/react-query-devtools/src/theme.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' export const defaultTheme = { diff --git a/packages/react-query-devtools/src/useLocalStorage.ts b/packages/react-query-devtools/src/useLocalStorage.ts index 794b6c9914..e4ab14e142 100644 --- a/packages/react-query-devtools/src/useLocalStorage.ts +++ b/packages/react-query-devtools/src/useLocalStorage.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' const getItem = (key: string): unknown => { diff --git a/packages/react-query-devtools/src/useMediaQuery.ts b/packages/react-query-devtools/src/useMediaQuery.ts index 272790c3cb..138b12a09a 100644 --- a/packages/react-query-devtools/src/useMediaQuery.ts +++ b/packages/react-query-devtools/src/useMediaQuery.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' export default function useMediaQuery(query: string): boolean | undefined { diff --git a/packages/react-query-devtools/src/utils.ts b/packages/react-query-devtools/src/utils.ts index 1bcad75982..4ad5ae70a7 100644 --- a/packages/react-query-devtools/src/utils.ts +++ b/packages/react-query-devtools/src/utils.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import type { Query } from '@tanstack/react-query' import SuperJSON from 'superjson' diff --git a/packages/react-query-persist-client/src/PersistQueryClientProvider.tsx b/packages/react-query-persist-client/src/PersistQueryClientProvider.tsx index 5ccb2ff36e..ecfc916a2b 100644 --- a/packages/react-query-persist-client/src/PersistQueryClientProvider.tsx +++ b/packages/react-query-persist-client/src/PersistQueryClientProvider.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core' diff --git a/packages/react-query/src/useIsFetching.ts b/packages/react-query/src/useIsFetching.ts index e72e5c0ea8..ceac657496 100644 --- a/packages/react-query/src/useIsFetching.ts +++ b/packages/react-query/src/useIsFetching.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import type { QueryKey, QueryFilters } from '@tanstack/query-core' import { notifyManager, parseFilterArgs } from '@tanstack/query-core' diff --git a/packages/react-query/src/useIsMutating.ts b/packages/react-query/src/useIsMutating.ts index 46c23a274c..97c3ad2e4b 100644 --- a/packages/react-query/src/useIsMutating.ts +++ b/packages/react-query/src/useIsMutating.ts @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' From bc8a5882d60c385aa4c64adeda63a75f04103b83 Mon Sep 17 00:00:00 2001 From: girishsontakke Date: Mon, 16 Jan 2023 20:08:26 +0530 Subject: [PATCH 3/4] perf(client components): added missing directives --- packages/react-query/src/Hydrate.tsx | 1 + packages/react-query/src/errorBoundaryUtils.ts | 1 + packages/react-query/src/isRestoring.tsx | 1 + 3 files changed, 3 insertions(+) diff --git a/packages/react-query/src/Hydrate.tsx b/packages/react-query/src/Hydrate.tsx index a1b9fed01f..19d94a3681 100644 --- a/packages/react-query/src/Hydrate.tsx +++ b/packages/react-query/src/Hydrate.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' import type { HydrateOptions } from '@tanstack/query-core' diff --git a/packages/react-query/src/errorBoundaryUtils.ts b/packages/react-query/src/errorBoundaryUtils.ts index 87e4ee1afd..68ed341bf3 100644 --- a/packages/react-query/src/errorBoundaryUtils.ts +++ b/packages/react-query/src/errorBoundaryUtils.ts @@ -1,3 +1,4 @@ +'use client' import type { DefaultedQueryObserverOptions, Query, diff --git a/packages/react-query/src/isRestoring.tsx b/packages/react-query/src/isRestoring.tsx index 3d8728e703..7d59c72507 100644 --- a/packages/react-query/src/isRestoring.tsx +++ b/packages/react-query/src/isRestoring.tsx @@ -1,3 +1,4 @@ +'use client' import * as React from 'react' const IsRestoringContext = React.createContext(false) From a28c5a0c0a04278a517de6d5153cc0e1f2f16aa3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20H=C3=B6glund?= Date: Tue, 24 Jan 2023 08:22:37 +0100 Subject: [PATCH 4/4] fix: remove 'use client' from hooks only files --- packages/react-query-devtools/src/useLocalStorage.ts | 1 - packages/react-query-devtools/src/useMediaQuery.ts | 1 - packages/react-query-devtools/src/utils.ts | 1 - packages/react-query/src/errorBoundaryUtils.ts | 1 - packages/react-query/src/useBaseQuery.ts | 1 - packages/react-query/src/useIsFetching.ts | 1 - packages/react-query/src/useIsMutating.ts | 1 - packages/react-query/src/useMutation.ts | 1 - packages/react-query/src/useQueries.ts | 1 - 9 files changed, 9 deletions(-) diff --git a/packages/react-query-devtools/src/useLocalStorage.ts b/packages/react-query-devtools/src/useLocalStorage.ts index e4ab14e142..794b6c9914 100644 --- a/packages/react-query-devtools/src/useLocalStorage.ts +++ b/packages/react-query-devtools/src/useLocalStorage.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' const getItem = (key: string): unknown => { diff --git a/packages/react-query-devtools/src/useMediaQuery.ts b/packages/react-query-devtools/src/useMediaQuery.ts index 138b12a09a..272790c3cb 100644 --- a/packages/react-query-devtools/src/useMediaQuery.ts +++ b/packages/react-query-devtools/src/useMediaQuery.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' export default function useMediaQuery(query: string): boolean | undefined { diff --git a/packages/react-query-devtools/src/utils.ts b/packages/react-query-devtools/src/utils.ts index 4ad5ae70a7..1bcad75982 100644 --- a/packages/react-query-devtools/src/utils.ts +++ b/packages/react-query-devtools/src/utils.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' import type { Query } from '@tanstack/react-query' import SuperJSON from 'superjson' diff --git a/packages/react-query/src/errorBoundaryUtils.ts b/packages/react-query/src/errorBoundaryUtils.ts index 68ed341bf3..87e4ee1afd 100644 --- a/packages/react-query/src/errorBoundaryUtils.ts +++ b/packages/react-query/src/errorBoundaryUtils.ts @@ -1,4 +1,3 @@ -'use client' import type { DefaultedQueryObserverOptions, Query, diff --git a/packages/react-query/src/useBaseQuery.ts b/packages/react-query/src/useBaseQuery.ts index 39718a3c0e..df537ab745 100644 --- a/packages/react-query/src/useBaseQuery.ts +++ b/packages/react-query/src/useBaseQuery.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' diff --git a/packages/react-query/src/useIsFetching.ts b/packages/react-query/src/useIsFetching.ts index ceac657496..e72e5c0ea8 100644 --- a/packages/react-query/src/useIsFetching.ts +++ b/packages/react-query/src/useIsFetching.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' import type { QueryKey, QueryFilters } from '@tanstack/query-core' import { notifyManager, parseFilterArgs } from '@tanstack/query-core' diff --git a/packages/react-query/src/useIsMutating.ts b/packages/react-query/src/useIsMutating.ts index 97c3ad2e4b..46c23a274c 100644 --- a/packages/react-query/src/useIsMutating.ts +++ b/packages/react-query/src/useIsMutating.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' diff --git a/packages/react-query/src/useMutation.ts b/packages/react-query/src/useMutation.ts index 0f10dbf74a..8ba94a3bfb 100644 --- a/packages/react-query/src/useMutation.ts +++ b/packages/react-query/src/useMutation.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore' diff --git a/packages/react-query/src/useQueries.ts b/packages/react-query/src/useQueries.ts index 092d691dd1..0682d30f1e 100644 --- a/packages/react-query/src/useQueries.ts +++ b/packages/react-query/src/useQueries.ts @@ -1,4 +1,3 @@ -'use client' import * as React from 'react' import { useSyncExternalStore } from './useSyncExternalStore'