@@ -263,6 +263,11 @@ export default function DataConnectorPagesRoot({
263263
264264 const [ isCacheReady , setIsCacheReady ] = useState < boolean > ( false ) ;
265265
266+ const shouldQuery =
267+ loaderData . clientSideFetch ||
268+ isCacheReady ||
269+ loaderData . dataConnector == null ;
270+
266271 //? Inject the server-side data into the RTK Query cache
267272 useEffect ( ( ) => {
268273 if ( loaderData . dataConnector == null ) return ;
@@ -325,15 +330,11 @@ export default function DataConnectorPagesRoot({
325330 //? * once the cache is ready (will use cache data)
326331 const globalQuery =
327332 dataConnectorsApi . endpoints . getDataConnectorsGlobalBySlug . useQuery (
328- ! projectNamespace && ( loaderData . clientSideFetch || isCacheReady )
329- ? { slug }
330- : skipToken
333+ ! projectNamespace && shouldQuery ? { slug } : skipToken
331334 ) ;
332335
333336 const namespaceQuery = useGetNamespacesByNamespaceDataConnectorsAndSlugQuery (
334- projectNamespace &&
335- ! dataConnectorNamespace &&
336- ( loaderData . clientSideFetch || isCacheReady )
337+ projectNamespace && ! dataConnectorNamespace && shouldQuery
337338 ? {
338339 namespace : projectNamespace ,
339340 slug,
@@ -343,9 +344,7 @@ export default function DataConnectorPagesRoot({
343344
344345 const projectQuery =
345346 useGetNamespacesByNamespaceProjectsAndProjectDataConnectorsSlugQuery (
346- projectNamespace &&
347- dataConnectorNamespace &&
348- ( loaderData . clientSideFetch || isCacheReady )
347+ projectNamespace && dataConnectorNamespace && shouldQuery
349348 ? {
350349 namespace : projectNamespace ,
351350 project : dataConnectorNamespace ,
@@ -354,15 +353,17 @@ export default function DataConnectorPagesRoot({
354353 : skipToken
355354 ) ;
356355
357- const {
358- currentData : dataConnector ,
359- isLoading,
360- error,
361- } = projectNamespace && dataConnectorNamespace
362- ? projectQuery
363- : projectNamespace
364- ? namespaceQuery
365- : globalQuery ;
356+ const queryResult =
357+ projectNamespace && dataConnectorNamespace
358+ ? projectQuery
359+ : projectNamespace
360+ ? namespaceQuery
361+ : globalQuery ;
362+
363+ const dataConnector = queryResult . currentData ?? loaderData . dataConnector ;
364+ const error =
365+ queryResult . error ?? ( dataConnector == null ? loaderData . error : undefined ) ;
366+ const isLoading = queryResult . isLoading || queryResult . isFetching ;
366367
367368 useEffect ( ( ) => {
368369 if ( dataConnector == null ) return ;
0 commit comments