@@ -340,45 +340,29 @@ const getRouteUseMutation = <TAppRoute extends AppRoute>(
340340 } ;
341341} ;
342342
343- const createNewProxy = ( router : AppRouter | AppRoute , args : ClientArgs ) => {
344- return new Proxy (
345- { } ,
346- {
347- get : ( _ , propKey ) : unknown => {
348- if ( isAppRoute ( router ) ) {
349- switch ( propKey ) {
350- case 'query' :
351- return getRouteQuery ( router , args ) ;
352- case 'mutation' :
353- return getRouteQuery ( router , args ) ;
354- case 'useQuery' :
355- return getRouteUseQuery ( router , args ) ;
356- case 'useInfiniteQuery' :
357- return getRouteUseInfiniteQuery ( router , args ) ;
358- case 'useQueries' :
359- return getRouteUseQueries ( router , args ) ;
360- case 'useMutation' :
361- return getRouteUseMutation ( router , args ) ;
362- default :
363- throw new Error ( `Unknown method called on ${ String ( propKey ) } ` ) ;
364- }
365- } else {
366- const subRouter = router [ propKey as string ] ;
367-
368- return createNewProxy ( subRouter , args ) ;
369- }
370- } ,
371- }
372- ) ;
373- } ;
374-
375343export type InitClientReturn < T extends AppRouter > = RecursiveProxyObj < T > ;
376344
377345export const initQueryClient = < T extends AppRouter > (
378346 router : T ,
379347 args : ClientArgs
380348) : InitClientReturn < T > => {
381- const proxy = createNewProxy ( router , args ) ;
382-
383- return proxy as InitClientReturn < T > ;
349+ return Object . fromEntries (
350+ Object . entries ( router ) . map ( ( [ key , subRouter ] ) => {
351+ if ( isAppRoute ( subRouter ) ) {
352+ return [
353+ key ,
354+ {
355+ query : getRouteQuery ( subRouter , args ) ,
356+ mutation : getRouteQuery ( subRouter , args ) ,
357+ useQuery : getRouteUseQuery ( subRouter , args ) ,
358+ useQueries : getRouteUseQueries ( subRouter , args ) ,
359+ useInfiniteQuery : getRouteUseInfiniteQuery ( subRouter , args ) ,
360+ useMutation : getRouteUseMutation ( subRouter , args ) ,
361+ } ,
362+ ] ;
363+ } else {
364+ return [ key , initQueryClient ( subRouter , args ) ] ;
365+ }
366+ } )
367+ ) ;
384368} ;
0 commit comments